Язык программирования PHP ПХПPHP (в настоящее время рекурсивный акроним для "PHP Hypertext Preprocessor", но изначально "Personal Home Page Tools",) является широко используемым с открытым исходным кодом языком программирования для начинающих, который используется в основном для серверных приложений, разработки динамических веб-страниц, таких как программное обеспечение MediaWiki . Его можно рассматривать как альтернативу Microsoft Active Server Pages (ASP) и CGI скриптам Perl.
Его простота использования и сходство с наиболее распространенными языками программирования, в первую очередь С и Perl, позволяет наиболее опытным программистам приступить к разработке сложных приложений с минимальными затратами на обучение. Он также позволяет опытным разработчикам со знаниями основ программирования принять участие в создании динамических приложений для генерации веб-контента без необходимости изучать целый ряд новых функций и нудной практики.
Одной из наиболее привлекательных черт PHP является то, что он больше чем просто язык сценариев. Благодаря своей модульной конструкции, PHP может также быть использован для разработки приложений с графическим интерфейсом, и он может быть использован из командной строки так же, как Perl или Python.
PHP позволяет, среди прочего, легко взаимодействовать с большим числом реляционных систем управления базами данных (Oracle, DB2, MySQL, PostgreSQL и др.), сохраняя при этом синтаксис простым, который очень подходит для обучения программированию для чайников. PHP работает на всех основных операционных системах, включая Unix, Linux, Windows и Mac OS X и может взаимодействовать со всеми основными веб-серверами. Сайт PHP содержит обширную документацию. Linux, Apache, MySQL, PHP (LAMP) - именно такая архитектура стала очень популярной в промышленности как способ дешевого развертывания надежных, масштабируемых и безопасных веб-приложений.
PHP является плодом коллективных усилий многих участников. Он распространяется по лицензии PHP, в стиле BSD.
PHP библиотеки
PHP, в отличие от ASP и Perl, имеет одну из крупнейших библиотек, которые распространяются свободно и открытыми исходными кодами, и включены в основную сборку. PHP является принципиально Интернет-зависимым языком. Есть модули, которые предназначены для доступа к FTP-серверам, серверам баз данных, LDAP серверам и многое другое. В дополнение к этому, много знакомых функций, таких как функции Си printf() и strstr(), которые уже доступны в стандартном пространстве имен.
PHP имеет широкий спектр применения, таких как поддержка Windows API, управление процессами на Linux, CURL поддержку, ZIP, GZIP и bzip2 поддержку. Некоторые из наиболее уникальных функций - PDF обработка, Shockwave Flash ("на лету"), интеграция с IRC и многое другое.
Это перечень всех официально зарегистрированых библиотек:
Apache BCMach Bzip2 Calendars CCVS COM ClibPDF cURL Cybercash dBase DBM dbx DB++ LDAP DOM XML .NET FrontBase filePro FriBiDi FTP Gettext GNU MP Library Hyperwave iconv IMAP, POP3 and NNTP Informix Interbase Ingres II IRC Java SMTP DNS mailparse MCAL Mcyrpt MCVE Mhash Mimetype Functions MS-SQL Ming mnoGoSearch mSQL MySQL Mowhawk muscat Ncurses Lotus Notes Session Handling SNMP Sockets Streams Sybase Tokens OBDC Oracle OpenSSL Ovrimos SQL PDF PayFlow Pro POSIX PostgreSQL Printer PSpell GNU Readline GNU Recode Regular Expressions QT-Dom Semaphores Shared Memory SESAM vpopmail Windows 32 API WDDX XML (Expat) XML-RPC XSLT YAZ Yellow Pages / NIS ZIP Zlib
Вплоть до версии 4 PHP не было объектно-ориентированных (ОО) особенностей. В версии 4 в основной функционал была добавлена ОО, но её реализации все еще не хватает мощных и полезных функций других языков программирования с OO, таких как как C++ и Java.
В версии 5, ОО функциональность PHP была очень расширена и является более надежной и полной. Вот обзор некоторых изменений в PHP 5 (также известном как Zend Engine): обработка PHP-объектов была полностью переписана, позволяя улучшить производительность и расширить функции. В предыдущих версиях PHP, объекты обрабатывались как примитивные типы (например, целые числа и строки). Недостаток этого метода был в том, что семантически весь объект будет скопирован, когда переменная будет назначен, или передан в качестве параметра метода. В новом подходе, объекты на которые ссылается указатель, а не по значению (можно думать об указателе, как идентификаторе объекта). Закрытые и защищенные члены. PHP 5 предоставляет закрытые и защищенные переменные-члены, они позволяют определить видимость свойств класса. Частные и защищенные методы Абстрактные классы и методы. PHP 5 также вводит абстрактные классы и методы. Абстрактный метод только декларирует подпись метода и не предусматривает осуществления. Класс, который содержит абстрактные методы, должны быть объявлен абстрактным. Интерфейсы. Класс может реализовать произвольный список интерфейсов. Клонирование объектов Если разработчик просит создать новую копию объекта, Zend Engine будет проверять, если __clone () метод был определен или нет. Если нет, то он будет вызывать по умолчанию __clone (), которая копирует все свойства объекта. Если __clone () метод определен, то он будет отвечать за набор необходимых свойств созданного объекта. Для удобства, движок будет поставляться с функцией, которая импортирует все свойства из объекта-источника, так что они могут начать по значению копию исходного объекта, и только переопределять свойства, которые должны быть изменены. Единые Конструкторы. PHP 5 предоставляет стандартный способ объявления конструктора методы, называя их по имени __construct (). Деструкторы. PHP 5 предоставляет концепцию деструкторов, аналогично другим объектно-ориентированных языков, таких как Java: Когда последняя ссылка на объект уничтожен, то деструктор объекта, который является классом метод с именем __destruct (), который не получает никаких параметров, вызывается до освобождением объекта из памяти. Исключения. PHP 4 не было обработки исключений. PHP 5 представляет модель исключения аналогичную модели в другие языках программирования.
История
PHP был первоначально разработан как оболочка Perl от Расмус Лердорф в 1994 году, чтобы отображать его резюме собирать некоторые данные, например, сколько раз была открыта страница. Полноценно впервые использован "Personal Home Page Tools" в 1995 году, который был создан Лердорфом в сочетании с его собственным обработчиком форм. PHP / FI создали Зеев Сураски и Энди Гутманс, два израильских разработчика из Технион - израильский технологический институт, полностью переписав парсер в 1997 году, который позже стал основой PHP 3. Они также изменили название на нынешнюю рекурсивную форму. После нескольких месяцев в тестовом режиме, команда разработчиков официально выпустила PHP / FI 2 в ноябре 1997 года. Общественное тестирование PHP 3 началось сразу же и официальное открытие состоялось в июне 1998 года. Сураски и Гутманс начал новую переработку ядра PHP, создав движок Zend в 1999 году. С мая 2000 года, PHP 4 работает на Zend Engine. Развитие продолжается в сторону PHP 5 с Zend Engine.
Популярность PHP
PHP является одним из наиболее популярных языков для создания сценариев на стороне сервера в Интернете. Это была широко принято с момента выпуска версии 4, которая была первой версией получившую мощь Zend Engine от [Zend Technologies].
Из-за популярности PHP, новое поколение программистов знает тех, кто знаком только с PHP. Программы на этом языке могут исполнятся в интерфейсе командной строки для PHP, наряду с поддержкой функций графического интерфейса, таких как Gtk или Ncurses. Это важный шаг для PHP, так как он представляет себя в качестве подлинного языка программирования (т.е. работает автономно на автономных машинах, здесь нужно вспомнить, что предназначение этого языка было обслуживание и обработка веб-страниц на стороне серверах).
Программное обеспечение , которое создано на PHP Drupal PHP-Nuke MediaWiki
"Р" в слове LAMP может означать PHP или Perl или Python.
|