Я новичок в php и хотел бы знать, существуют ли различия между этими тегами сервера:
<?php ?>
а также
<? ?>
Первый – это безопасное раскрытие и закрытие тега, второе – так называемый короткий открытый тег. Второй вариант не всегда доступен, используйте первый вариант, если это возможно. Вы можете проверить наличие коротких открытых тегов в php.ini в short_open_tag.
Проблема с короткими открытыми тегами заключается в следующем:
<?xml version="1.0" ?>
вызовет проблемы, если вам разрешено использовать короткие теги (т.е. <?
и ?>
). <?php
менее открыт для неправильной интерпретации.
Независимо от того, разрешено ли вам использовать короткие теги, определяется директивой ini short_open_tag
.
Также я думаю, что короткие тэги удаляются в одном из самых громких релизов.
Изменить: я был неправ.
Прощание <% Они удалят поддержку тегов стиля ASP, но тег короткого кода PHP останется – так, чтобы те, кто на php general, которые считают, что short-tag «depreceated» – hah! 😉
Нет никакой разницы.
Способность использовать <? ?>
<? ?>
определяется в вашем файле php.ini – обычно доступен только хосту сервера.
Вы можете найти более подробную информацию здесь
Ничего AFAIK, однако у меня были серверы (общие), где настройки не поддерживают сокращенные теги <? ?>
<? ?>
, поэтому я обычно придерживаюсь <?php ?>
для хорошей меры.
Примечание: short_open_tag = Off не влияет на <?=
Сокращенный, что эквивалентно <?php echo