1.6. Как выглядит PHP-сценарий
PHP-код существует внутри обычного HTML-файла и выделяется специальными тегами. Как и все HTML-теги, PHP-код начинается с открывающей угловой скобки (<) и завершается закрывающей угловой скобкой (>). Для того чтобы отличать тег PHP от других тегов, после открывающей и перед закрывающей угловыми скобками стоит знак вопроса (?). Весь текст, находящийся внутри PHP-тега, передается браузером без интерпретации. Текст, находящийся внутри тега, считается PHP-кодом и анализируется соответствующим образом.
Для того чтобы обработать этот PHP-код с помощью редактора XML или каких-либо других редакторов типа Microsoft Front Page, PHP имеет еще три других способа обозначения своего кода. Указание php после знака вопроса делает PHP-код понятным для XML-анализаторов. Можно использовать также тег сценария, как это делается при написании сценариев для JavaScript. Наконец, можно использовать теги, которые используются для ASP, а это последовательность <% для обозначения начала кодового блока кодов. В приложении Г, "Теги PHP", показано, как работают эти варианты. Я обычно использую последовательности <? и ?>, так как полностью уверен, что могу настроить PHP таким образом, чтобы он их понимал. В коде, который вы создаете в коллективе разработчиков, в качестве открывающего тега лучше всего воспользоваться последовательностью <?php, как это показано в примерах.
В листинге 1.6 представлена обычная HTML-страница с одним существенным но­вовведением: PHP-кодом, заключенным между тегами <?php и ?>. Когда такая страница обрабатывается модулем PHP, он замещает PHP-код текущей датой. И будет получено что-то типа Friday May 1, 1999 (рис. 1.1).
Листинг 1.6. Вывод текущей даты
<html> <head>
<title>JlMCTMHr 1.6</title>
</head>
<body>
Текущая дата: <?php print(Date("l F d, Y")); ?>
</body>
</html>
Введение в программирование в php
PHP игнорирует символы пробелов, табуляций и возврата каретки. При разумном использовании таким образом можно улучшить удобочитаемость создаваемого кода. Листинг 1.7 представляет собой функционально то же самое, что и предыдущий пример, хотя в нем PHP-код выделен лучше.

| Листинг 1.7. Переформатирование для улучшения удобочитаемости
<html> <head>
<title>JJMCTMHr 1.7</title>
</head>
<body>
Today's date: <?php /*
** распечатать текущую дату */
print(Date("l f d, y"));
?>
</body> </html>

Обратите внимание на ту строку кода в листинге 1.7, которая начинается с косой черты и звездочки. Это начало комментария. Все, что находится между символами /* и */ , - равносильно пробелу и будет проигнорировано. Комментарии предназначаются для объяснения работы вашего кода. Даже при написании своих собственных кодов, за исключением простейших сценариев, комментарии могут оказаться необходимыми во всех случаях.
Кроме открывающих и закрывающих операторов комментирования, язык PHP предоставляет возможность создавать однострочные комментарии. Двойные косые черты или символ # приводят к тому, что любой символ, находящийся после них и до конца строки, будет проигнорирован синтаксическим анализатором.
Пропустив пробелы и комментарии в листинге 1.7, анализатор PHP обнаруживает первое слово print. Это одна из функций PHP. Функция собирает код в единое целое, которое можно вызвать по ее имени. Функция print передает браузеру текст. Заключенное в кавычки содержимое анализируется, и, если оно содержит какой-то вывод, функция print передаст его на браузер.
Где завершается строка? В отличие от языков BASIC и JavaScript, не использующих обозначения конца строки, в языке PHP для этого используется точка с запятой. Эту особенность язык PHP берет из языка C. Содержимое строки, расположенное между print и символом ;, является вызовом функции date. Текст между открывающими и закрывающими кавычками представляет собой параметры, передаваемые функции date. Параметр сообщает функции date, в каком виде вы хотите видеть дату. В данном случае используются коды для отображения дня недели, полного названия месяца, дня месяца и года, обозначенного четырьмя цифрами. Текущая дата форматируется и передается назад функции print.
Символьная строка, которая начинается двойными кавычками, называется строковой константой, или строковым литералом. Синтаксический анализатор PHP "знает", что когда символы взяты в кавычки, они рассматриваются как текст. Если кавычек нет, PHP решит, что это имя функции или какие-либо другие синтаксические построения. Другими словами, первая кавычка сообщает PHP, что ему можно "отдыхать" до тех пор, пока не встретится вторая кавычка.
Заметим, что print вводится полностью строчными буквами, тогда как функция date начинается с прописной буквы. Это было сделано для того, чтобы показать, что PHP довольно терпимо относится к способам написания встроенных функций. Print, PRINT и PrInT являются приемлемыми вариантами написания одной и той же функции. Однако для удобочитаемости принято представлять встроенные функции PHP только в нижнем регистре.