Когда PHP обрабатывает файл, он ищет открывающие и закрывающие теги, которые указывают PHP когда начинать и заканчивать обработку кода между ними. Подобный способ обработки позволяет PHP внедряться во все виды различных документов, так как все, что находится вне пары открывающих и закрывающих тегов, будет проигнорировано парсером PHP. В большинстве случаев PHP внедряется в HTML-документы, как это показано в следующем примере.
<p>Это будет проигнорировано.</p>
<?php echo 'А это будет обработано.'; ?>
<p>Это тоже будет проигнорировано.</p>
Можно использовать и более продвинутые структуры:
Пример #1 Продвинутое внедрение
<?php
if ($expression) {
?>
<strong>Это истина.</strong>
<?php
} else {
?>
<strong>Это ложь.</strong>
<?php
}
?>
Существует четыре набора тегов, которые могут быть использованы для обозначения PHP-кода. Из них только два <?php ?> и <script language="php"> </script>) всегда доступны. Другими двумя являются короткие теги и теги в стиле ASP, которые могут быть включены или выключены в конфигурационном файле php.ini. Хотя короткие теги и теги в стиле ASP могут быть удобны, они не так переносимы, как длинные версии, и поэтому не рекомендуются.
Замечание:
Кроме того, если вы намереваетесь вставлять PHP-код в XML или XHTML, чтобы соответствовать XML стандартам, ам следует использовать форму <?php ?>.
Пример #2 Открывающие и закрывающие теги PHP
1. <?php echo 'если вы хотите работать с документами XHTML или XML, делайте так'; ?>
2. <script language="php">
echo 'некоторые редакторы (например, FrontPage) не
любят инструкции обработки';
</script>
3. <? echo 'это простейшая инструкция обработки SGML'; ?>
<?= выражение ?> Это синоним для "<? echo выражение ?>"
4. <% echo 'Вы можете по выбору использовать теги в стиле ASP'; %>
<%= $variable; # Это синоним для "<% echo . . ." %>
Несмотря на то, что теги указанные в первых двух примерах всегда доступны, наиболее широко используется (и рекомендуется) первый пример из этих двух.
Короткие теги (третий пример) доступны только когда они включены с помощью директивы short_open_tag в конфигурационном файле php.ini, либо если PHP был скомпилирован с опцией --enable-short-tags .
Теги в стиле ASP (четвертый пример) доступны только когда они были с помощью директивы asp_tags в конфигурационном файле php.ini.
Замечание:
Следует избегать использования коротких тегов при разработке приложений или библиотек, предназначенных для распространения или размещения на PHP-серверах, не находящихся под вашим контролем, так как короткие теги могут не поддерживаться на целевом сервере. Для создания переносимого, совместимого кода, не используйте короткие теги.
Замечание:
В PHP 5.2 и более ранних версиях парсер не позволял файлам содержать только один открытый тег <?php. Это было разрешено, начиная с версии PHP 5.3.