Как мы уже знаем, PHP - это гипертекстовой препроцессор (Hypertext Preprocessor). Иными словами, PHP генерирует гипертекст, или, проще говоря, HTML код. С одним способом взаимодействия HTML страницы и PHP - внедрением - мы уже вкратце знакомы. Есть и другой способ - использование шаблонов.
Расмотрим оба способа подробнее, после чего обратим внимание на существующие операторы вывода.
Внедрение - простой и интуитивно понятный способ. PHP код просто вставляется в HTML страницу. При запросе такой страницы на место PHP кода подставляется результат его исполнения - HTML код. Для отграничения PHP кода используются специальные тэги.
PHP тэги
Аннотация
Четыре варианта PHP тэгов.
Каждый PHP тэг состоит из двух частей - открывающей и закрывающей (часто о них говорят даже как о самостоятельных открывающем и закрывающем тэгах). В зависимости от используемых символов различают четыре разновидности тэгов.
<?php ?>. Классическая форма (с ней мы уже встречались). Всегда поддерживается и практически ни с чем не конфликтует. Именно эта форма должна использоваться в скриптах, которые внедряются в XHTML страницы для соответствия стандартам; впрочем, во всех остальных случаях также настоятельно рекомендуется использовать классическую форму. В частности, мы будем использовать ее в наших учебных примерах.
<script language="php"> </script>. Также всегда поддерживается, но использование атрибута language в данном контексте противоречит современным XHTML и даже поздним HTML стандартам. Поэтому применение этой формы не приветствуется, хотя оно может быть оправдано при использованиии для разработки некоторых приложений, не воспринимающих инструкций наподобие <?php ?>.
<? ?>. Краткая форма. Поддерживается только в тех случаях, если PHP был скомпилирован с опцией --enable-short-tags или директива short_open_tag включена (эта директива может быть установлена или изменена на уровне PHP_INI_PERDIR).
Замечание
Если Вы используете PHP для внедрения в XHTML страницы, которые содержат начальное объявление <?xml version="1.0" ?>, то директиву short_open_tag необходимо выключить либо выводить упомянутое объявление при помощи PHP.
print '<?xml version="1.0" ?>';
<% %>. Краткая форма в ASP стиле. Может быть использована только в том случае, когда директива asp_tags включена (эта директива может быть установлена или изменена на уровне PHP_INI_PERDIR).
Внимание
Во избежание возможной несовместимости не следует использовать краткие тэги в тех приложениях, которые предполагается распространять либо использовать на сервере, настройками которого Вы не можете управлять.