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.