Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
PHP обучение на примерах - Кухарчик А..pdf
Скачиваний:
139
Добавлен:
24.05.2014
Размер:
24 Мб
Скачать
☆

Часть III

Знакомьтесь — РНР

История создания РНР

Язык РНР появился осенью 1994 года. Его создатель — Расмус Лердорф (Rasmus Lerdorf) (рис. 11) — использовал язык в своих целях, чтобы иметь представление о тех людях, которые посещают его сайт и знакомятся с его резюме.

Рис. 11. Создатель РНР — Расмус Лердорф

По словам разработчика языка, РНР был написан буквально за день в промежутках между деловыми встречами. Сначала это

ИсториясозданияРНР

37

была просто невзрачная CGI-оболочка , написанная на языке Perl, которая служила исключительно для специфических целей. Такое приложение (его называют шлюзом, или CGI-программой) запускается сервером в реальном режиме времени. Сервер передает запросы пользователя CGI-программе, обрабатывающей их, и возвращает результат работы программы на экран пользователя. Таким образом, посетитель получает динамическую информацию, которая может изменяться в результате влияния различных факторов. Сам шлюз может быть написан на различных языках программирования — C/C++, Fortran, Perl, TCL, Unix Schell, Visual Basic, Apple Script и др. Создатель РНР для разработки шлюза сначала выбрал язык Perl, как наиболее простой и доступный.

В результате дальнейшей эксплуатации выяснилось, что CGI-обо- лочка обладает малой производительностью (медленно работает), и Расмус Лердорф вынужден был переписать все заново, но уже на языке С, что позволило увеличить скорость работы РНР. Пользователи сервера, на котором располагался сайт с первой версией РНР, заинтересовались этим языком. Лердорф не предполагал, что кто-то другой будет пользоваться этим языком, но РНР довольно быстро перерос в самостоятельный проект, и в начале 1995 года вышла первая известная версия продукта, называвшаяся Personal Home Page Tools (средства для персональной домашней страницы). На тот момент РНР обладал более чем скромными возможностями. Он имел простейший анализатор кода, который понимал несколько специальных команд, а также разные утилиты для сайта, необходимые для разработки гостевой книги, счетчика посещений, чата, системы статистики и т.п. К середине 1995 года язык был основательно переработан, а также появилась возможность обработки форм и были добавлены функции работы с базами данных. В таком виде вышла вторая версия продукта. Затем была более дополненная третья и, наконец, современная нам четвертая версия РНР.

Сегодня РНР — это мощный кроссплатформенный набор средств, который располагается на сервере и предназначен для обработки

CGI (Common Gateway Interface, общий шлюзовой интерфейс) — стандарт, предназначенный для создания серверных приложений. (Примеч. ред.)

К моменту выхода книги была готова версия РНР 5.0 beta 4. (Примеч. ред.)

38

Знакомьтесь — РНР

специального кода, встраиваемого в HTML-страницу. Благодаря этому появилась возможность легко создавать динамические сайты. Файлы, созданные таким образом, хранятся и обрабатываются на сервере. Когда посетитель запрашивает документ с РНР-кодом, скрипт обрабатывается не браузером посетителя, как, например, при использовании JavaScript, а сервером (точнее, сервер передает управление специальной программе, обрабатывающей РНР-код). Посетителю передаются уже только результаты работы. Точно так же работает CGI-программа, написанная на С или Perl.

Но в отличие от CGI, РНР-код можно встраивать в любое место HTML-страницы, что является основным преимуществом РНР по отношению к CGI. Кроме того, РНР очень прост для изучения и не требует каких-либо специфических знаний. Например, мне вполне хватило опыта, приобретенного лет десять назад на уроках информатики в школе, на которых мы изучали язык Basic на очень модных и дорогих тогда Yamaha.

Несмотря на столь радужную характеристику, есть у РНР и недостатки. Стоит отметить довольно медленную, по сравнению с СGI-программами, работу больших (именно больших, так как маленькие скрипты не вызывают существенной нагрузки) РНРскриптов. РНР — интерпретируемый язык , что непременно ведет к ухудшению производительности в случае очень больших и сложных программ, но для выполнения несложных манипуляций на сайте РНР — лучший выбор. К тому же последние версии РНР практически лишены этих недостатков. Полностью переписанный и оптимизированный код сделал свое дело, и если ваш хостинг-провайдер позволяет использовать РНР версии более 4.1 — будьте спокойны. Этому очень способствовал тот факт, что частично РНР стал компилируемым языком. Но только частично, в нем очень гармонично уживаются и интерпретатор, и ком-

Интерпретатор — транслятор (программа или устройство, которое переводит программу с одного языка программирования на другой), анализирующий команды или операторы исходной программы и немедленно выполняющий их. Таким образом, интерпретатор одновременно и транслирует, и выполняет заданную программу в отличие от компилятора, который только транслирует всю программу без ее выполнения. (Примеч. ред.)

Соседние файлы в предмете Программирование