PHP

Материал из wiki.owlhost.net
Перейти к: навигация, поиск

PHP — скриптовый язык программирования общего назначения, который применяется для разработки веб-приложений. На данный момент поддерживается почти всеми хостинг-провайдерами и является лидером среди языков, которые применяются для создания веб-сайтов.

Язык и его интерпретатор разрабатываются группой любителей как проект с открытым кодом. Проект распространяется под собственной лицензией, которая несовместима с GNU GPL.

В области программирования для Интернет, PHP — один из самых популярных скриптовых языков благодаря своей простоте, быстроте выполнения, кроссплатформенности и распространению исходных кодов на основе свободной лицензии PHP.

Популярность в области построения веб-сайтов обуславливается наличием широкого набора средств для разработки веб-приложений. Основные из них:

извлечение POST и GET-параметров, а также переменных окружения веб-сервера в предопределённые массивы; взаимодействие с большим кол-вом различных систем управления БД; автоматическая отправка HTTP-заголовков; работа с HTTP-авторизацией; работа с cookies и сессиями; работа с локальными и удалёнными файлами, сокетами; обработка файлов, загружаемых на сервер; работа с XForms.

В настоящее время PHP используется большинством разработчиков. Согласно рейтингу компании TIOBE, который основывается на данных поисковых систем, в 2011 году PHP находился на 5 месте среди языков программирования. К крупнейшим сайтам, использующим PHP, относятся Facebook, ВКонтакте, Wikipedia.

Режимы интерпретатора

Существует несколько способов применения интерпретатора PHP:

В роли модуля к веб-серверу с помощью SAPI или ISAPI (например, для Apache модуль mod_php). Веб-сервер начинает работу с загруженным модулем и при обращении к php-скрипту он выполняет его в окружении процесса веб-сервера. Это наиболее широко используемый метод использования PHP так как: он удобен для отладки, так как ошибки PHP выводятся на экран, тогда как в режиме CGI ошибка приводит к ошибке 500 и дальнейшую информацию необходимо искать в логах веб-сервера; имеется возможность менять некоторые настройки PHP «на лету» с помощью файла .htaccess, без перезагрузки веб-сервера; в режиме CGI нет возможности воспользоваться HTTP-аутентификацией. обладает более высокой скоростью работы. В качестве CGI. В этом случае, при обращении к скрипту веб-сервер вызывает /usr/bin/php-cgi /path/to/script.php. При этом происходит создание нового процесса и скрипт выполняется в окружении php-cgi, которое, в зависимости от настроек, может немного отличаться от окружения процесса веб-сервера. Более новым вариантом является FastCGI. Несмотря на то, что препроцессор PHP все равно будет рестартовать при каждом запросе, главным козырем данного варианта перед предыдущим является более высокая безопасность, потому как PHP работает как отдельное приложение со своими правами. В качестве скрипта командной строки, являющегося исполняемым файлом, который будет вызыватся пользователем из командной строки; скрипт выполняется в окружении вызвавшего пользователя. В этом случае возможно использование PHP для создания клиентских GUI-приложений и решения административных задач в большинстве ОС UNIX, Linux, Microsoft Windows, Mac OS X и AmigaOS. Однако, в таком качестве он не получил распространение, отдавая пальму первенства Perl, Python и VBScript