Добавление функции phpinfo
Стр 1 из 3Следующая ⇒ Введение Изначально аббревиатура РНР расшифровывалась как Personal Home Page (личная домашняя страничка). Этот язык был создан в 1994 году Расмусом Лердорфом (Rasmus Lerdorf), чтобы отслеживать пользователей, просматривавших его домашнюю страничку с резюме. Позже, когда функциональность РНР значительно расширилась и профессионалы начали использовать этот язык для создания сложных сайтов, сокращение стали расшифровывать как гипертекстовый препроцессор РНР: Hypertext Preprocessor, Определение означает, что данные в этом языке обрабатываются до того, как становятся HTML-страницей (HTML - язык гипертекстовой разметки). Согласно официальному сайту РНР (www.php.net), РНР является серверным межплатформенным встроенным в HTML языком написания сценариев. Это может показаться довольно сложным определением, но оно станет простым и понятным, если рассмотреть его по частям.
Преимущества PHP
Попросту говоря, РНР быстрее, лучше и проще, чем другие языки. При разработке Web-сайтов основными альтернативами РНР являются: базовый HTML, CGI-сценарии (Common Gateway Interface, обычно написанные на языке Perl), ASP (Active Server Pages) и JSP (Java Server Pages). Язык JavaScript не является альтернативой РНР, поскольку это клиентская технология, которая не может быть использована для создания HTML-страниц таким же образом, как собственно РНР или CGI. Преимущество РНР перед базовым HTML состоит в том, что последний представляет собой систему с ограниченными возможностями, не обладающую гибкостью или динамичностью. Посетители сайтов видят обычные статические HTML-страницы, без каких либо персональных настроек. С помощью же РНР можно создавать привлекательные оригинальные Web-страницы на основе любых задаваемых вами критериев (например, времени суток или операционной системы пользователя). В отличие от HTML язык РНР также может взаимодействовать с базами данных и файлами, с его помощью обрабатывается электронная почта и выполняются многие другие операции.
Web-мастера давно поняли, что невозможно создать действительно привлекательные и универсальные Web-сайты только с помощью HTML. Поэтому серверные технологии, такие как CGI-сценарии, получили широкую популярность. Подобные системы позволяют дизайнерам создавать динамично генерируемые Web-приложения, где во внимание принимаются любые мелочи, которые захотелось учесть программисту. При настроенном взаимодействии с базой данных наиболее продвинутые Web-сайты позволяют обновлять и сопровождать страницы быстрее и легче, чем это возможно с базовым HTML. Очевидно, что вопрос нужно ставить таким образом: почему Web-дизайнер должен использовать язык РНР вместо CGI, ASP или JSP для создания динамического Web-сайта? Во-первых, программировать на РНР проще и быстрее, чем на CGI, к тому же и написанные сценарии выполняются с более высокой скоростью. Достаточно упомянуть тот факт, что освоить и использовать РНР намного легче, чем универсальные языки программирования. Любой человек, в том числе не получивший специальной подготовки по программированию, сможет легко писать сценарии РНР. Сравним: ASP и CGI являются достаточно полными языками и, следовательно, более сложны в усвоении, при этом первый требует понимания VBScript, a CGI - Perl (или С). Во-вторых, в отличие от Perl, VBScript и Java язык РНР был разработан специально для создания динамических Web-страниц, что подразумевает выполнение им именно этих задач быстрее и легче, чем альтернативными языками. Хочу, однако, подчеркнуть, что, хотя для определенных целей РНР подходит лучше, чем CGI или ASP, он не является оптимальным языком программирования. Например, на РНР удается делать не все, что возможно на языках Java или Perl. На РНР можно взглянуть и с другой стороны - как на необходимое и естественное расширение возможностей языка разметки HTML. Необычайная популярность последнего и взрыв интереса к Internet показали ограниченность
возможностей этого языка. Несколько дополнений к стандарту HTML повысили изобразительные возможности языка, добавили способность выполнять программы на JavaScript в браузере. Но без РНР HTML так и не стал полноценным языком программирования. В нем нет знакомых любому разработчику операторов организации циклов, условных переходов, функций, структур данных и прочего. Одинаково правильны оба утверждения: у языка РНР встроены все синтаксические конструкции HTML. У HTML, при подключении на сервере модуля РНР, появляются возможности настоящего языка программирования. РНР уже используется на более чем трех миллионах Web-сайтов, и его популярность продолжает расти. РНР - серверный язык. Это значит, что написанный вами код постоянно находится на стороне сервера, который посылает Web-страницы в браузер. Когда пользователь собирается зайти на Web-сайт, провайдер направляет этот запрос на сервер, на котором хранится информация. На сервере код РНР читается и выполняется в соответствии с прописанными в нем командами. В нашем примере сервер должен отправить соответствующие командам Web-страницы в браузер посетителя в виде HTML (рис. 1). Образно говоря, РНР создает HTML-страницу на лету, как это запрограммировано в сценарии, и в этом случае на сервере вообще нет статических HTML-страниц. На сайте со статичными HTML-страницами все происходит по-другому. На запрос клиента сервер посылает в Web-браузер только данные HTML, при этом на серверной стороне не происходит никакой интерпретации данных (рис. 2). Следовательно, для браузера конечного пользователя может не существовать никакой разницы между тем, как выглядят страницы home.html и home.php, но путь, по которому пришел ответ, различен. С помощью РНР вы можете заставить сервер динамически генерировать HTML-код. Различная информация может быть представлена пользователю при посещении сайта в понедельник и во вторник, при первом и последующем обращениях к этому ресурсу. Создание динамических Web-страниц - вот что отличает менее привлекательные статические сайты от более интересных и, следовательно, более посещаемых ресурсов.
Рис. 1. Данная схема демонстрирует процесс взаимодействия клиента, сервера и модуля РНР (приложение, установленное на сервер для расширения его функциональности) при отправке HTML-страницы в браузер. Во всех серверных технологиях, в том числе в ASP, для обработки данных, которые отправляются клиенту, используются подобные дополнительные модули.
Рис. 2 Сравните прямое непосредственное взаимодействие Web-сервера и браузера с тем, что приведено на рис. 3. Простые HTML-страницы можно просматривать в браузере на вашем компьютере безучастия сервера. К динамически генерируемым страницам доступ осуществляется только через специально настроенный Web-сервер, которым и проводится необходимая обработка.
Первые шаги с PHP Основы синтаксиса Разработаем нашу первую страницу на языке РНР точно так же, как начали бы с нуля документ HTML. Между стандартными HTML- и PHP-документами есть два основных различия. Во-первых, файлы PHP-сценария сохраняются с расширением, php (например, index.php). А во-вторых, PHP-код заключается в <?РНР и?> для отделения кода РНР от HTML. Тэги РНР и код HTML в первом сценарии: 1. Открываем текстовый редактор WordPad или любой другой. 2. Выбираем команду File>New для создания нового пустого документа. 3. Напечатаем: <HTML><HEAD><TITLE>First PHP Script</TITLE></HEAD><BODY> Для большей наглядности можно расположить каждый элемент или группу элементов на отдельной строке. 4. На новой строке набираем <? РНР. 5. Нажимаем клавишу Enter для создания новой строки и символы?>. 6. Печатаем </BODY></HTML>. 7. Выбираем команду File >Save As. В появившемся диалоговом окне выбираем формат Text Only (или ASCII). 8. Выбираем место для сохранения сценария. 9. Сохраняем сценарий как first.php. Основная структура HTML-документа с тэгами РНР. Все РНР-сценарии должны быть выделены специальными тэгами. Тогда сервер сможет обрабатывать то, что нужно, как PHP-код. Внутри PHP-тэгов все интерпретируется как сценарий РНР, а прочая информация посылается в браузер как стандартный код HTML.
1. <HTML> 2. <HEAD> 3. <TITLE>First PHP Script</TITLE> 4. </HEAD> 5. <BODY> 6. <?PHP 7.?> 8. </BODY> 9. </HTML>
Передача данных в браузер
Теперь, когда вы создали свой первый PHP-сценарий, самое время попробовать с ним что-нибудь сделать. Как упоминалось в предисловии, РНР говорит серверу, какие данные посылать в браузер. Для начала мы используем функцию phpinfо() для печати служебной информации. При вызове данная функция пошлет в Web-браузер таблицу с полным перечнем характеристик самого сервера и установленного на этом сервере модуля РНР. В качестве сервера я буду использовать утилиту Top Server 2.1, которая позволяет создать локальный сервер на жестком диске. Добавление функции phpinfo 1. Открываем в текстовом редакторе сценарий first.php. 2. Установим курсор между PHP-тэгами (<?РНР и?>) и создаем новую строку, нажав клавишу Enter. 3. На новой строке вводим phpinfо ();. 4. Меняем название страницы, заменив First на Test в третьей строке HTML. 5. Сохраним сценарий как test.php. Так как этот файл сохраняется отдельно, мы изменили титульную строку HTML при добавлении функции phpinfо(). 1. <HTML> 2. <HEAD>. 3. <TITLE>Test PHP Script</TITLE> 4. </HEAD> 5. <BODY> 6. <?PHP 7. phpinfо(); 8.?> 9. </BODY> 10. </HTML> Каждая инструкция PHP-кода должна заканчиваться знаком “точка с запятой”. Инструкция в РНР - это исполняемая строка кода, такая как print() или phpinfо(). Точка с запятой в конце строк означает указание выполнить команду. И наоборот, строки комментариев, PHP-тэги, управляющие структуры (условные операторы, циклы и т.п) и некоторые другие конструктивные элементы, обсуждаемые далее, не требуют использования данного знака. Тэг РНР указывает только то, что начинается PHP-код; символы комментариев поясняют текст в программе и т.п. Таким образом, точка с запятой завершает конкретное действие и не требуется для конструктивных элементов, которые создают условия. Тестирование сценария В противоположность Коду HTML, который можно протестировать на своем компьютере с помощью Web-браузера, результаты PHP-сценария удастся посмотреть только после сохранения сценария на сервере, поддерживающем технологию РНР.
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|