Термин в Энциклопедическом Фонде

Язык программирования PHP

PHP (от англ. Hypertext Preprocessor - Препроцессор Гипертекста) - это широко используемый язык сценариев общего назначения с открытым исходным кодом.
PHP - язык программирования, специально разработанный для написания web-приложений (сценариев), исполняющихся на Web-сервере. Синтаксис языка во многом основывается на синтаксисе C, Java и Perl. Он очень похож на С и на Perl, поэтому для профессионального программиста не составит труда его изучить. С другой стороны, язык PHP проще, чем C, и его может освоить веб-мастер, не знающий пока других языков программирования.
Огромным плюсом PHP, в отличие от, например, JavaScript, является то, что PHP-скрипты выполняются на стороне сервера. PHP не зависит от скорости компьютера пользователя или его браузера, он полностью работает на сервере. Пользователь даже может не знать, получает ли он обычный HTML-файл или результат выполнения скрипта.
Сценарии на языке PHP могут исполняться на сервере в виде отдельных файлов, а могут интегрироваться в html страницы.
PHP способен генерировать и преобразовывать не только HTML документы, но и изображения разных форматов - JPEG, GIF, PNG, файлы PDF и FLASH. PHP способен формировать данные в любом текстовом формате, включая XHTML и XML.
PHP - кроссплатформенная технология. Дистрибутив PHP доступен для большинства операционных систем, включая Linux, многие модификации Unix, Microsoft Windows, Mac OS и многих других. PHP поддерживается на большинстве вебсерверов, таких, как Apache, Microsoft Internet Information Server (IIS), Microsoft Personal Web Server и других. Для большинства серверов PHP поставляется в 2-х вариантах - в качестве модуля и в качестве CGI препроцессора.

PHP поддерживает работу с ODBC и большое количество баз данных: MySQL, MSQL, Oracle, PostgreSQL, SQLite и др.
Язык PHP постоянно совершенствуется, и ему наверняка обеспечено долгое доминирование в области языков web -программирования.

История развития PHP

История PHP начинается с 1995 г., когда Расмус Лердорф (Rasmus Lerdorf) создал простое приложение на языке Perl, анализирующее посещения пользователями его резюме на веб-сайте. Лердорф назвал свое творение Personal Home Page Tools версия 1 и выставил для свободного скачивания.
 В версии PHP 3 от 1998 г. была возможность расширения ядра, что привлекло к работе над PHP множество сторонних разработчиков, создающих специализированные модули. Их наличие дало PHP возможность работать с огромным количество баз данных, протоколов, поддерживать большое число API. Сразу же после выхода PHP 3, Энди Гутманс и Зив Сураски начали переработку ядра PHP. В первую очередь предстояло решить проблему повышения производительности. Основной идей его использования была возможность компиляции сценария в исполняемый модуль, за счет чего производительность можно было поднять на порядок.
PHP 4  вышел в 2000 г. В дополнение к улучшению производительности, PHP 4 имел новые возможности по поддержке сессий, буферизацию вывода, безопасные способы обработки вводимой пользователем информации и новые языковые конструкции. С выходом 4 версии PHP стал использоваться уже на более чем 20% доменов Интернета.
В июле 2004 г., выходит  в свет версия PHP 5. Ко всем возможностям предыдущей, в  версии PHP 5 добавили реализацию объектного программирования. Кроме этого, PHP обогатился рядом ценных расширений для работы с XML, различными источниками данных, генерации графики и пр.

Краткий обзор PHP 5

PHP 5 обладает широкими  возможности объектно-ориентированного программирования.
Вот некоторые из них
•    Класс в PHP объявляется с помощью ключевого слова class.
•    Методы и поля класса могут быть общедоступными (public, по умолчанию), защищёнными (protected) и скрытыми (private).

PHP поддерживает все три основные механизма ООП - инкапсуляцию, полиморфизм и наследование (родительский класс указывается с помощью ключевого слова extends после имени класса). Поддерживаются интерфейсы (ставятся в соответствие с помощью implements). Разрешается объявление финальных, абстрактных методов и классов. Множественное наследование классов не поддерживается, однако класс может реализовывать несколько интерфейсов. Для обращения к методам родительского класса используется ключевое слово parent.
Классы в PHP 5 имеют ряд специальных методов (так называемых "magic methods"), начинающихся с двух символов подчёркивания. Особо стоит отметить конструктор (__construct, в ранних версиях конструктором служил метод, одноименный с классом) и деструктор (__destruct), а также методы чтения (__get) и записи (__set), свёртывания (__sleep) и развёртывания (__wake), клонирования (__clone) и др. Эти методы являются достаточно гибким инструментом: переопределяя их, можно легко добиться существенного изменения поведения объекта.

Энциклопедический Фонд