Среда, 19.02.2020
Меню сайта
Вход на сайт
Логин:
Пароль:
Поиск
Статистика
Рейтинг@Mail.ru
Яндекс цитирования
Реклама
HTMLPerlPHPПрочее

Что такое РНР?
Допустим, вы вышли за рамки статических Web-страниц и вам требуется обрабатывать HTML-формы. Или вы хотите создать Web-страничку, которая осуществляла бы обработку введенных вами данных, обращаясь непосредственно к базе данных. А возможно, вам надо запрограммировать электронный магазин, опрос посетителей вашего сайта, разнообразные счетчики посещений — язык РНР поможет вам реализовать все эти и многие другие задачи.
Возникает вопрос, а почему именно РНР, ведь множество программ, работающих через CGI (Common Gateway Interface — общий шлюзовой интерфейс, являющийся стандартом, описывающим HTTP-приложения), написаны наязыке Perl, C/C++, Fortran, TCL, Unix Shell, Visual Basic, Apple Script и других подобных языках. Сервер передает запросы пользователя CGI-программе, которая их обрабатывает и возвращает результат своей работы на экран пользователя. В результате пользователь получает динамическую информацию, которая может изменяться под влиянием различных факторов. Разработчики всегда стремились создавать языки программирования, оптимально подходящие для всех условий работы в той или иной среде. Изучая в дальнейшем данную книгу, вы сможете понять, почему же создатель РНР — известный программист Расмус Лердорф(Rasmus Lerdorf) — начал разработку языка программирования, исполняющегося на стороне сервера.
Что касается, например, популярного языка программирования Perl, то это – очень хороший, мощный язык, но слишком велики системные издержки во время вызова программы на каждый запрос страницы, особенно в Windows. Поэтому в 1994г. появился совершенно новый язык, который и получил название РНР (Personal Home Page). Сам язык программирования был написан буквально за день в промежутки между деловыми встречами Расмуса Лердорфа. Сначала это была простая, невзрачная CGI-оболочка, написанная на языке Perl, которая служила исключительно для специфических целей.
С течением времени при эксплуатации выяснилось, что оболочка обладает маленькой производительностью, и создателю ничего не оставалось, как переписать ее заново, исправив существующие ошибки. Узел Сети, на котором.находилось резюме, был чрезвычайно перегружен, и чтобы избавиться от значительных непроизвольных затрат, он переписал оболочку на языке С. Это позволило значительно увеличить скорость работы РНР. Пользователи сервера, где располагался сайт с первой версией РНР, попросили себе такой же инструмент. Затем, как неизбежно это случается, пользователи начали просить о большем количестве функций. Расмус Лердорф старался выполнить все пожелания пользователей и в результате наполовину собрал дистрибутив наряду с документацией и часто задаваемыми вопросами. И хоть он не предполагал, что кто-то другой будет пользоваться этим языком, довольно быстро РНР перерос в самостоятельный проект, и в начале 1995 г. вышла первая известная версия продукта. Имя этого первого пакета было Personal Home Page Tools (средства для персональной домашней страницы). В то время РНР обладал более чем скромными возможностями. Он имел простейший анализатор кода, который понимал несколько специальных команд, а также разные утилиты для использования на домашней странице, необходимые для построения таких полезных вещей, как гостевая книга, счетчик, чат, системы статистики и т. д. В то же время Расмус Лердорф начал заниматься базами данных, чему положило начало написание инструмента для реализации SQL-запросов в Web-страницах. Это была отдельная CGI-оболочка, которая анализировала запросы SQL и облегчала создание форм и таблиц, основанных на этих запросах. Этот инструмент был назван Form Interpreter (FI — интерпретатор форм). После того как были добавлены функции работы с базами данных, вышла вторая версия продукта.
Различие между РНР и FI незначительное. И РНР, и FI созданы из одного и того же исходного текста. Когда происходит формирование пакета данных без какой-либо регистрации доступа или поддержки ограничения доступа, вызывается выполняемый модуль FI. Когда происходит формирование документов при помощи выше перечисленных опций, используется РНР.
Сейчас РНР — это быстро развивающееся средство программирования, работающее на очень многих серверах в Интернете (рис. 1.1). Как средство разработки Web-приложений РНР сейчас является одним из самых популярных вместе с ASP, FrontPage и mod_perl. Благодаря этому языку появляется возможность легко создавать динамические сайты. Файлы, созданные таким образом, хранятся и обрабатываются на сервере. Когда посетитель запрашивает документ с РНР, скрипт обрабатывается не браузером посетителя, как, например, JavaScript, а сервером, и посетителю передаются только результаты работы. Точно так же работает CGI-пpoграмма, написанная на С или Perl. Но в отличие от CGI код PHP-программы можно встраивать в любое место HTML-страницы, что, конечно, является основным преимуществом перед CGI. Кроме того, сам язык очень прост для изучения и не требует каких-либо специфических знаний.
PHP можно разделить на язык и библиотеку функций. Существует большое количество инструментальных средств для РНР, интерфейсы ко всем популярным СУБД (системам управления базами данных), почтовым протоколам, разделяемой памяти, графическим файлам, архивам и множество других инструментов, с которыми вы сможете познакомиться в процессе изучения данной книги.
Язык настолько прост в использовании, что совсем скоро каждый программист в области Интернета сможет овладеть и применять полученные знания для решения все большего числа поставленных задач. Уже в наши дни РНР используется более чем на 2,5 млн. сайтов.
Язык PHP (Personal Home Page Tools, инструменты персональных домашних страниц) - это язык сценариев с открытым исходным кодом, встраиваемых в HTML-код и выполняемых на Web-сервере. Этот язык написан Web-разработчиками и для Web-разработчиков. Язык РНР является конкурентом таких продуктов, как Microsoft Active Server Pages (ASP), Macromedia ColdFusion и Sun Java Server Pages. Некоторые специалисты называют РНР "открытым языком ASP" или "ASP с открытым исходным кодом". Это неверно, потому что РНР разрабатывался на несколько лет раньше, примерно в одно и то же время с Java Server Pages, поэтому можно сказать, что ASP является закрытой альтернативой для РНР.
Сам по себе Web-сервер не умеет выполнять сценарии РНР, для этого необходима программа интерпретатор. Такие интерпретаторы существуют для всех популярных Web-серверов (IIS, Apache) на всех основных платформах (Windows, Linux и т. д.).
Язык РНР является официальным модулем Apache Web Server. Это бесплатный Web-сервер, который является лидером и используется более чем на половине серверов в Интернете (точную цифру назвать сложно, но любые данные указывают на превосходство данного сервера). Что значит официальный модуль? Это значит, что движок обработки PHP-сценариев может быть встроен в Web-сервер, что позволяет ускорить выполнение и улучшить управляемость памятью. Сервер Apache существует для всех основных платформ - Windows, Mac OS X и основные разновидности Unix-систем - и на любой платформе эффективно работает с РНР.
Язык РНР позволяет встраивать фрагменты кода непосредственно в HTML страницы, а интерпретированный код вашей страницы отображается пользователю. Код на языке РНР можно воспринимать как расширенные теги HTML, которые выполняются на сервере, или как маленькие программы, которые выполняются внутри страниц, прежде чем будут отправлены клиенту. Все, что делает код программы, незаметно для пользователя.
Язык РНР позволяет соединяться с популярными базами данных, расположенными на сервере, и обрабатывать информацию из таблиц (изменять, добавлять, удалять данные). Это делает язык очень мощным при создании корпоративного сайта, содержащего множество данных. Да и любая домашняя страница уже немыслима без централизованного хранилища данных.

  • Основное отличие РНР от CGI-скриптов, написанных на других языках, типа Perl или C++, — это то, что в CGI-программах вы сами пишете выводимый HTML-код, а используя РНР, встраиваете свою программу в готовую HTML-страницу при помощи открывающего и закрывающего тегов <?php ?>.

  • Отличие РНР от JavaScript состоит в том, что PHP-скрипт выполняется на сервере, а клиенту передается результат работы, тогда как JavaScript-код полностью передается на клиентскую машину и только там выполняется.

  • Любители Internet Information Server найдут, что РНР очень похож на Active Server Pages (ASP), а энтузиасты Java скажут, что РНР похож на Java Server Pages (JSP). Все три языка позволяют размещать код, выполняемый на Web-сервере, внутри HTML-страниц.

  • В РНР включена поддержка многих баз данных, что делает написание Web-приложений с использованием БД до невозможности простым.
  • Категория: PHP | Добавил: mcreyt | Просмотров: 6789 | Дата: 04.01.2010
    Похожие материалы:
    Всего комментариев: 0
    Добавлять комментарии могут только зарегистрированные пользователи.
    [ Регистрация | Вход ]