Первый называется тегами short-open , а второй - тегами безопасного открытия и закрытия.
Вы можете включить / отключить короткие открытые теги в php.ini , используя параметр short_open_tag
.
Следует избегать коротких тегов, посмотрите:
PHP Short Open Tag: удобный ярлык или быстрое изменение безопасности?
Использование коротких тегов ?>
следует избегать при разработке приложений или библиотек, которые предназначены для распространения или развертывания на серверах PHP, которые не находятся под вашим контролем, потому что короткие теги могут не поддерживаться на целевом сервере. Для переносимого, распространяемого кода не используйте короткие теги.
Также обратите внимание, что если вы встраиваете PHP в XML или XHTML, вам нужно будет использовать теги Php?>
, чтобы соответствовать стандартам.
короткие теги ?>
, работает только в более старых версиях php.
Я лично никогда не сталкивался с этой проблемой, но поддержка ?>
при переезде на разные серверы не очень эффективна. Я предпочитаю просто придерживаться для ясности и последовательности.
Всегда используйте
, потому что ?>
:
)
Серверы должны быть настроены для использования
, поэтому рекомендуется использовать Php
по соображениям переносимости.
Из руководства ( http://www.php.net/manual/en/language.basic-syntax.phpmode.php ):
Есть четыре разные пары открывающие и закрывающие теги, которые могут быть используется в PHP. Двое из них, и , всегда доступны. Другие два короткие теги и теги стиля ASP, и можно включать и выключать с файл конфигурации php.ini. Как таковой, в то время как некоторые люди находят короткие теги и Теги в стиле ASP удобны, они менее портативный и, как правило, не рекомендуемые.
С точки зрения языка разницы нет, но многие магазины предпочитают использовать , потому что простой
открывающий тег может встречаться в XML-файлах, что может привести к путанице для интерпретатора.
Редактировать: Я думал, что это все еще проблема: http://terrychay.com/article/short_open_tag.shtml
Php
всегда можно использовать.
можно использовать, только если включена директива short_open_tag .
short_open_tag сообщает PHP, должна ли быть разрешена короткая форма (
?>
) открытого тега PHP. Если вы хотите использовать PHP в сочетании с XML, вы можете отключить эту опцию, чтобы использоватьXml?>
inline.В противном случае вы можете распечатать его с помощью PHP, например:Php echo ' Xml version = "1.0"?>'; ?>
. Кроме того, если он отключен, вы должны использовать длинную форму открытого тега PHP (Php?>
).Примечание: Эта директива также влияет на сокращение
=
, которое идентичноэхо
. Для использования этого ярлыка должен быть включен short_open_tag.
Как уже упоминалось, эта директива часто отключена, поэтому из соображений переносимости я предпочитаю использовать Php?>
. Если это не проблема, особой разницы быть не должно, кроме того, что если директива включена, вы также можете использовать сокращенное обозначение =
.