Что тaкoe PHP?

Его официальное название - Hypertext Preprocessor (PHP: Гипертекстовый Препроцессор), и он является языком сценариев, выполняющихся на сервере. Когда ваш браузер пытается получить доступ к указанному вами URL (Uniform Resource Locator - унифицированный указатель ресурса), он выполняет запрос к Web-серверу. Когда вы запросите РНР-страницу, например, http://www.youcompany.com/home.php, Web-сервер активизирует синтаксический анализатор РНР и говорит: "Надо проделать кое-какую работу перед тем, как я отправлю результат на этот браузер". После этого синтаксический анализатор выполняет РНР-код, расположенный в файле home.php, и возвращает полученный результат. Этот результат возвращается Web-серверу как часть HTML кода документа, который, в свою очередь, передается вашему браузеру для отображения.

Kopoткo об истории РНР

В 1994 году перспективно мыслящий человек по имени Rasmus Lerdorf разработал набор инструментов, которые использовали синтаксический анализатор для интерпретации нескольких макросов. Эти инструменты не были особенно оригинальными: гостевая книга, счетчик посещений и несколько других элементов "домашней страницы", которые были достаточно круты на ранней стадии развития Web. Он, в конечном счете, скомбинировал эти инструменты с пакетом интерпретации форм (FI — form interpretation), им же написанным, добавил некоторую поддержку баз данных и выпустил этот продукт под именем PHP/FI.

Так, в духе свободно распространяемых исходных кодов, разработчики всего мира начали содействовать развитию PHP/FI. К 1997 году более 50000 Web-сайтов использовали PHP/FI для решения различных задач - подключение к базе данных, отображение динамического содержимого и т.п.

К этому времени разработка стала по-настоящему результатом коллективных усилий. При участии разработчиков Zeev Suraski и Andi Gutmans, была создана версия РНР 3.0. Окончательная редакция Р НР 3.0 была выпущена в июне 1998 года, когда она была дополнена поддержкой множества платформ (теперь уже не только для Linux) и Web-серверов, многочисленных баз данных, а также протоколов SNMP (Simple Network Management Protocol - простой протокол сетевого управления) и IMAP (Internet Message Access Protocol — межсетевой протокол доступа к сообщениям).

В настоящее время:

  • Миллионы Web-серверов используют РНР;
  • Был выпущен РНР 4.0.0, поддерживающий движок Zend;
  • Вот-вот появятся подключаемые (Plug-in) модули оптимизации и отладки РНР-кода;
  • РНР 4.0.0 может работать почти с любой комбинацией Web-серверов, операционных систем и баз данных, которые только возможно придумать.

Что делает РНР?

Согласно руководству по РНР: "Цель языка - помочь Web-разработчику быстро создавать динамически генерируемые страницы".

Обычно РНР используется для следующих целей:

  • Выполнения системных функций: создания, открытия, чтения, записи и закрытия файлов в вашей системе; выполнения системных команд; создания каталогов; изменения прав доступа.
  • Сбора данных с помощью форм: сохранения данных в файле, отправки данных по электронной почте, возврата обработанных данных пользователю.
  • Доступа к базам данных и генерации содержимого "на лету", или создания Web-интерфейса для добавления, удаления и изменения элементов в вашей базе данных.
  • Записи на компьютер пользователя файлов "cookie" и доступа к переменным "cookie".
  • Запуска сессий и использования переменных и объектов сессии.
  • Проверки имени и пароля (аутентификации) пользователя для ограничения его доступа к разделам вашего Web-сайта
  • .
  • Создания изображений "на лету".
  • Шифрования данных.

Эти возможности используются повсеместно. РНР 4.0.0 включает поддержку для Java, Java Servlets, XML и бесчисленного множества других высокоуровневых функций. Его возможности безграничны.

Нужен ли вам РНР?

Только вы можете решить, будет ли РНР вашим языком, с помощью которого вы будете разрабатывать сайты для персонального или коммерческого использования, в малых или больших масштабах. РНР: гибок, быстр, скромен в своих требованиях, и в то же время обладает мощными возможностями.

Перед тем как принять решение об использовании РНР в больших масштабах или для применения в коммерческой сфере, ответьте для себя на следующие вопросы:

  • Можете ли вы сказать с абсолютной уверенностью, что вы будете всегда использовать Web-сервер с одним и тем же аппаратным и программным обеспечением? Если нет, обратите внимание на межплатформенные возможности РНР, доступные для любых типов Web-серверов.
  • Будете ли вы всегда иметь один и тот же коллектив разработчиков, полностью состоящий из ASP (или ColdFusion) разработчиков? Или вы будете сотрудничать с тем, кто есть, что повлечет за собой необходимость быстрого обучения языку, похожему по синтаксису на С и Perl? Если вы имеете основания полагать, что ваши ASP или ColdFusion-разработчики могут покинуть вас, то не используйте эти инструменты, используйте РНР.
  • Есть ли у Вас проблемы, связанные с недостатком памяти и загрузкой сервера? Если это так, то не используйте программное обеспечение, занимающее большой объем памяти, используйте РНР.

В заключение нужно еще раз отметить, что язык РНР достаточно прост - вы только попробуйте его! Если он вам понравится - используйте его дальше, он с открытым кодом, поэтому вам обеспечена помощь. Подпишитесь на список рассылки; помогайте другим. Если не понравится, то программное обеспечение можно быстро деинсталлировать, не причинив ни малейшего вреда вашему компьютеру.



Hosted by uCoz