На этой странице

Теги PHP


PHP – код встраивается с помощью тегов (дескрипторов).

<?php и ?>

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

Компактный вид


Компактный вид – доступен, только если директива short_open_tag имеет значение on, по умолчанию в файле php.ini в строке 198 указано значение off .

<? и ?>

Следует помнить, что при работе с этими дескрипторами могут возникнуть проблемы при выводе xml – документов, так как последовательность тегов <?xml ... ?>будет воспринята как выделение php – кода.

Для максимальной совместимости рекомендуется использовать только обычные теги.

<?php ... ?> и <?= ... ?>

Пользовательские правила


Файл должен начинаться и заканчиваться между тегами <?php и ?>, а все, кроме этого, игнорируется синтаксическим анализатором php.

<?php
php – код ...// Выполняется
?>

В php доступны три типа тегов.


  • Обычный тег - normal tag (<?php ?>)
  • Короткий эхо-тег - short echo tag (<?= ?>)
  • Короткий тег - short tag (<? ?>)

Для стабильной работы рекомендуется использовать только обычный и короткий эхо-тег.

Если в вашем файле есть только php-код, не используйте закрывающий тег.

<?php
php code;
php code;
php code;

Но если вы встраиваете php с html, то нужно использовать php-код с открывающим и закрывающим тегом.

<html>
<head>
</head>
<body>
<?php
php code;
php code;
php code;
?>

Если вы хотите просто напечатать один текст или что-то в этом роде, вам следует использовать сокращенную версию. <?= $var ?>

Но если вы хотите что-то обработать, вы должны использовать обычный тег.

<?php
        $var = 3;
        $var2 = 2;
        $var3 = $var+$var2;
        if($var3){result}
?>

Если вы внедрили php с html и одной строкой, не нужно использовать точку с запятой.

<html>
<head>
</head>
<body>
<?= $var ?>
</body>
</head>
</html>

Но если у вас несколько строк, используйте точку с запятой.

<html>
<head>
</head>
<body>
<?php
line 1;
line 2;
line 3;
?>
</body>
</head>
</html>

Нет никакой разницы между обычным (<?php ?>) и коротким эхо-тегом (<?= ?>), но без использования комментариев.

Пример


<h1>Обычный тег с c++ стиль однострочного комментария:  <?php //"Обычный тег"; ?> прерывает режим php и возвращает режим html</h1>
<h1>HTML-код после (обычный тег)<?php // и commnet, затем (закрывающий тег) ?> прерывает режим php и возвращает режим html</h1>

Короткий эхо-тег


<h1>html-код после (короткий эхо-тег)<?php // и commnet then (закрывающий тег) ?> прерывает режим php и не возвращает режим html</h1>

Правила для точки с запятой, что удаление точки с запятой иногда необязательно, но вам нужно знать условие, когда ее можно удалить, а когда нельзя.

Пример 1: PHP-скрипт с закрывающим тегом в конце


>?php
// php code
//можно убрать точку с запятой
mysqli_close( $db )
?>

Пример 2: PHP-скрипт без закрывающего тега в конце


>?php
// php code
// нельзя убрать точку с запятой
mysqli_close($db);

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

По материалам документации PHP