PHP模板变量<! - ?= - >

时间:2011-11-02 14:54:49

标签: php tags

我需要在模板文件中吐出一些php变量。

通常我会做<?php echo $var; ?>但我知道你也可以<?=$var?>做同样的事情。

我知道我已经看过“启用php短标签”的设置或类似的东西。这意味着服务器将解释<?<?php

我的问题是,为了获得变量<?=$var?>的方法,是否必须允许使用短标记?

谢谢!

5 个答案:

答案 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起,<?=始终可用。