我需要在模板文件中吐出一些php变量。
通常我会做<?php echo $var; ?>
但我知道你也可以<?=$var?>
做同样的事情。
我知道我已经看过“启用php短标签”的设置或类似的东西。这意味着服务器将解释<?
和<?php
我的问题是,为了获得变量<?=$var?>
的方法,是否必须允许使用短标记?
谢谢!
答案 0 :(得分:5)
这取决于PHP版本。
从5.4.0开始,<?=
始终有效。在此之前,需要在PHP.ini中启用short_open_tag
。
另请参阅:http://php.net/manual/en/ini.core.php
我会避免使用它们,以获得最大的便携性。
答案 1 :(得分:0)
是的,<?=
需要短标签。人们常常讨厌短标签,根据“你的代码不可移植。新服务器可能没有启用它们!”的口号。所以...如果你想要便携性,避免使用短标签。如果您可以保证操作环境并且可以打开它们,那么请随意使用它们。
答案 2 :(得分:0)
自PHP 5.4.0起,<?=
始终可用。在此之前,必须允许short_open_tag使用它。
答案 3 :(得分:0)
对于5.4.0之前的PHP版本,答案是肯定的:
注意: 该指令还影响了PHP 5.4.0之前的简写
<?=
,它与<?
echo相同。使用此快捷方式需要启用short_open_tag。自PHP 5.4.0起,<?=
始终可用。
答案 4 :(得分:0)
从手册:
开发应用程序时应避免使用短标签 用于在PHP上重新分发或部署的库 不受你控制的服务器,因为短标签可能没有 在目标服务器上受支持。对于便携式可再发行代码, 一定不要使用短标签。
此外,
这个指令也影响了PHP 5.4.0之前的简写
<?=
与<? echo
相同。使用此快捷方式需要short_open_tag 继续。自PHP 5.4.0起,<?=
始终可用。