Иллюстрированный самоучитель по PHP

Основы

Программа на РНР может прерываться кодом web-страницы – для этого достаточно вставить закрывающий тэг до этого кода и открывающий – после. Все, что находится между ними, будет выдаваться в браузер без какой-либо обработки, рассматриваясь как выводимое с помощью команды echo. Иными словами, код:

<?php if ($a==l) {?><р>Переменная а равна 1</p><?php> }?>

…эквивалентен коду:

<?php if ($a==l) {echo "<p> Переменная а равна
1</p>";}?>

…однако, первый вариант меньше нагружает процессор компьютера, на котором расположен интерпретатор РНР.

Из сказанного также следует, что все программы на РНР, расположенные на одной web-странице, представляют собой одну большую программу, несмотря на то, что они разделяются блоками обычного текста страницы. Именно поэтому переменная, объявленная в расположенном в начале страницы коде, сохраняет свое значение не только до ее конца, но и во всех присоединяемых с помощью команды include файлах. Пример – на рис. 3.2.

Иллюстрированный самоучитель по PHP › Основы
Рис. 3.2. Пример PHP-кода

Посмотрите внимательно на код и результат его отображения. Обратите внимание, что переменная а, которой присвоено значение еще в первом программном блоке левой страницы, сохранила его не только в других ее блоках, но и в программе, расположенной во включаемой с помощью команды include странице.

В РНР можно создавать функции – подпрограммы, которые можно вызывать по своим именам, при необходимости передавая им определенную информацию. Необходимы они в том случае, когда один и тот же код нужно выполнять несколько раз для разных данных, особенно если требуемое количество выполнений заранее неизвестно. Создать функцию на РНР можно, вставив в программу инструкцию function имя (переменные, в которые записываются передаваемые параметры, и их тип) {…команды функции… }, а вызвать – простым указанием имени этой функции и параметров.

Помните, что переменные, созданные в функции, по умолчанию имеют установленное значение только внутри функции. Кроме того, также по умолчанию переменные, объявленные вне функции, в ней самой никакого значения не имеют, а если надо, чтобы имели, то вначале функции их следует "подключить" командой global <переменная>; – и лишь после этого они станут доступными в функции. Подробнее о функциях и о переменных в них читайте в руководстве по РНР, например, с того же сайта http://php.spb.ru.

Обычно web-сервер настраивается так, что на предмет наличия программ на РНР просматриваются файлы, имеющие расширение .php, .php3, .phtml, остальные же файлы передаются в браузер пользователя без поиска в них команд РНР. Делается так для более быстрой работы сервера, а также для обеспечения возможности установки на сервере разных интерпретаторов (например, SSI – Server Side Includes, технологии, в какой-то мере предшествовавшей РНР), так как тогда каждому из интерпретаторов назначаются свои расширения для обработки соответствующих файлов.

Так как РНР-код полностью исполняется на web-сервере, то в страницах, выдаваемых браузеру, он будет отсутствовать, и если кто заинтересуется вашим опытом программирования, то вам придется отправлять ему этот код по почте, так как при просмотре сайта каким-нибудь образом узнать исходный PHP-код его страниц нельзя.

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.