Когда PHP обрабатывает файл, он ищет открывающие и закрывающие теги, такие как <?php и ?>, которые указывают PHP, когда начинать и заканчивать обработку кода между ними. Подобный способ обработки позволяет PHP внедряться во все виды различных документов, так как всё, что находится вне пары открывающих и закрывающих тегов, будет проигнорировано парсером PHP.

PHP также допускает короткий открывающий тег <?, однако использовать их нежелательно, так как они доступны только если включены с помощью конфигурационной директивы php.ini short_open_tag, либо если PHP был сконфигурирован с опцией —enable-short-tags .

Если файл содержит только код PHP, предпочтительно опустить закрывающий тег в конце файла. Это помогает избежать добавления случайных символов пробела или перевода строки после закрывающего тега PHP, которые могут послужить причиной нежелательных эффектов, так как PHP начинает выводить данные в буфер при отсутствии намерения у программиста выводить какие-либо данные в этой точке скрипта.

<?php
echo "Hello world";

// ... еще код

echo "Последнее выражение";

// Скрипт заканчивается тут без закрывающего тега PHP

 

Список изменений
Версия Описание
7.0.0 ASP-теги

<%, %>, <%=

 

, и теги скриптов

<script language="php">

 

удалены из PHP.

5.4.0 Тег

<?=

 

доступен всегда, вне зависимости от настройки short_open_tag.