?
В первой статье я кратко расскажу, что же представляет из себя РНР как язык и укажу на основные преимущества и недостатки его перед другими языками программирования. Идея РНР родилась в голове некого Расмуса Ледорфома(Rasmus Lerdorf). Как предполагается, где-то в конце 1994 года. Не так давно между прочим, и именно по этой причине - по причине молодости РНР, так мало есть ресурсов на его тему. Кстати, полная расшифровка РНР звучит так - Personal Home Page Tools. На великом и могучем это звучит примерно так - персональные инструменты для домашней странички. Ну примерно так. Так вот, в начале 1995 вышла коммерческая версия, которая была гораздо шире и функциональней, и именно ей было суждено завоевать признание тысяч (в те еще времена) web - мастеров. В 1998 году появился РНР3 - тот же язык, но гораздо более усовершенствованный и переписанный заново уже другими людьми. Он стал еще более популярным во всем мире. Но довольно истории.
Так что же это за зверь такой - РНР, и с чем его прикажете подавать? PHP Версии 3.0 - язык написания сценариев, внедренный в HTML. Многое из синтаксиса заимствовано из C, Java и Perl (это тоже языки программирования), с добавлением специфичных для PHP возможностей. Задача языка состоит в том, чтобы дать возможность Web-разработчикам легко и быстро создавать динамично изменяемые html-страницы. Уж что что, а это он делает великолепно! Это и есть основное преимущество РНР - его код внедряется прямо в HTML, причем никаких ограничений не существует. Единственное условие - не забывать открывать и закрывать теги, которыми ограничивается код РНР.
Что-бы сервер узнал, что в коде страницы кроме стандартного HTML есть код РНР, надо сказать ему об этом. Сделать это просто - достаточно в нужном файле изменить расширение со стандартных *.htm или *.html на *.phtml, *.p
Еще один плюс РНР - это удивительная похожесть его синтаксиса с языками С, С++, Java и т.д. Точнее будет сказать, что РНР впитал все самое лучшее из этих языков и максимально избавился от их недостатков. Нет никакой необходимости выделять память, следить за типами переменных (в обычных условиях), определять переменные и т.д. Все улучшения коснулись уже 3 версии, но есть и недостатки. Один из основных - отсутствие возможности условных и безусловных переходов в скрипте. Это накладывает ограничения на большие скрипты. А точнее - ограничений нет, просто очень большие скрипты становится писать уже сложно. Впрочем, РНР разрабатывался именно как небольшие включения в HTML, и в этом качестве ему нет равных. А если учитывать еще и тот факт, что РНР удивительно легко интегрируется со всеми основными базами данных и позволяет делать много удивительных вещей. Например - прайсы с возможностью поиска информации. На CGI аналогичный скрипт получается много больше чем на РНР.