РАЗРАБОТКА ПРИЛОЖЕНИЙ НА ОСНОВЕ WEB-ТЕХНОЛОГИЙ
ОСНОВЫ ЯЗЫКА РНР
Описание языка
Все языки программирования, используемые при разработке web-приложений, можно разделить на две большие группы.
К первой относятся те из них, код которых выполняется на компьютере посетителя сайта, т. е. в браузере, запущенном на компьютере пользователя. Результат выполнения скрипта зависит от браузера. Это известные всем JavaScript и VBScript. Скрипты на этих языках встраиваются в код web-страниц или выносятся в отдельный файл, обращение к которому осуществляется из web-страницы.
Во вторую группу включаются те языки, программы на которых выполняются на web-сервере. Эта группа более обширна. Дело в том, что в принципе на web-сервере могут исполняться программы на любом языке, даже командных .bat-файлов MS- DOS, важно лишь, чтобы на нем была установлена программа- интерпретатор этого языка, удовлетворяющая стандарту CGI, которому также должен удовлетворять сам web-сервер.
Язык РНР относится ко второй группе, т. е. программа на РНР исполняется на web-сервере. Однако от других CGI- языков РНР сильно отличается в лучшую сторону прежде всего своей простотой. При создании программы на РНР не надо заботиться о правах доступа к файлам сценария, прописывать точные пути к различным модулям, нет необходимости следить за отсутствием в файле скрипта недопустимых символов.
Одним из наиболее заметных достоинств РНР является возможность без особых затруднений работать с подавляющим большинством типов БД. Для этого имеются встроенные функции, поэтому достаточно установить на web-сервере необходимый сервер БД (наиболее часто используется бесплатная MySQL — http://www.mysql.com) и включить в текст РНР- сценария команды работы с ней.
Возможности РНР можно весьма серьезно расширить с помощью дополнительных модулей, содержащих различные функции. Эти модули при необходимости размещаются на web-сервере, на котором установлен PH Р-интерпретатор. Большое количество готовых модулей можно загрузить с адреса http://www.php.net, там же, в разделе документации, приведено и полное их описание. Например, модуль Zlib позволяет работать из программы на РНР с архивами в формате Gzip, а модуль libswf — с Flash-презентациями, создавая и редактируя их прямо из программы.
В отличие от многих других языков программирования, РНР был создан обычным пользователем Расмусом Лердор- фом в 1994 году. Цель разработки языка была проста — сделать свою домашнюю страницу более интерактивной, а значит, и более привлекательной для посетителей. Расмус разработал базовый синтаксис и написал первый интерпретатор своего языка, получившего название Personal Home Page Tools (РНР). Этот интерпретатор мог обрабатывать лишь несколько основных команд, однако начало было положено.
В 1995 году Расмус доработал интерпретатор РНР, соединив его с другой своей программой, умевшей обрабатывать HTML-формы, - FI (Form Interpretator), а также сделал так, что интерпретатор, получивший название РНР/FI Version 2, мог становиться частью web-сервера. Это новшество позволило программам на РНР исполняться очень быстро. Кроме того, в том же 1995 году интерпретатор РНР был дополнен возможностями обработки новых команд, в частности, для работы с серверами БД и автоматического создания gif-файлов. PHP/F1 был размещен в Сети для всеобщего использования, и началось его повсеместное распространение. К концу 1997 года РНР использовался более чем на пятидесяти тысячах сайтов.
Web-мастера быстро оценили достоинства нового языка web-программирования: легкость освоения и богатство возможностей, и вскоре традиционные Perl и С стали сдавать свои позиции. Так как исходный код интерпретатора был открыт (а сам интерпретатор бесплатный), то энтузиасты стали заниматься его доработкой, и летом 1998 года появился на свет РНР 3.0 - результат совместной работы Зива Сураски (Zeev Suraski) и Энди Гутманса (Andi Gutmans). РНР 3.0 был создан практически «с нуля», так как его авторы сочли код предыдущих версий недостаточно эффективным. Кроме того, РНР 3.0 стал весьма легко расширяемым продуктом. Любой, создавший на основе определенных стандартов модуль расширения РНР, позволяющий, скажем, работать с архивами какого-либо типа, мог этот модуль интегрировать с программными файлами РНР без каких-либо серьезных затрат времени и сил. Уже к концу 1999 года число сайтов, построенных на основе РНР, превысило миллион. Весьма важным достоинством РНР также являлось то, что программы, позволявшие обрабатывать команды РНР, были созданы практически для всех операционных систем от Windows до Unix и Linux.
В 2000 году вышла разработанная компанией Zend Technologies четвертая версия интерпретатора РНР, дополненная множеством новых функций. В настоящее время именно она является наиболее распространенной — используется более чем на 20 % сайтов Сети.
РНР - язык программирования, выполняющийся на стороне web-сервера, поэтому его команды нагружают компьютер, на котором установлен интерпретатор. Вследствие этого на серверах бесплатного хостинга использование РНР обычно невозможно или сопровождается необходимостью установки рекламных баннеров сервера. На текущий момент существует бесплатный хостинг без рекламы с поддержкой РНР — «Хос- тингер» (http://hostinger.ru/). Однако практически на всех серверах платного хостинга проблем с использованием РНР не возникает, и при разработке сайта можно полноценно применять возможности этого языка.