【问题标题】:<?= and <? echo in PHP<?= 和 <? PHP中的回声
【发布时间】:2016-05-20 14:55:06
【问题描述】:

我正在使用像 codeigniter 和fuelphp 这样的PHP 框架,我阅读了一些我推荐&lt;?= 而不是&lt;?php echo 的手册。但我没有同时使用它们,而是使用&lt;? echo,但我仍然不确定我是否做得对。我对使用&lt;?= 感到不舒服。需要经验丰富的 PHP 开发人员的建议。提前致谢。

【问题讨论】:

标签: php codeigniter echo fuelphp shorthand


【解决方案1】:

PHP 已弃用 &lt;? 因为它已被其他编程语言采用

如果您觉得舒服,建议使用&lt;?php

享受您的编码...

【讨论】:

    【解决方案2】:

    这没有对错之分,这是一个基于意见的问题。我个人确实喜欢尽可能使用短标签,因为我发现它更容易阅读。其他人可能会发现

     <?php
    

    更容易阅读,并且会更喜欢这个。这是一个完全基于意见的问题,我不会担心。使用你喜欢的。

    【讨论】:

      【解决方案3】:

      首先,&lt;? ... ?&gt;&lt;?php ... ?&gt; 的短代码...这是 PHP 文档本身的内容:

      http://php.net/manual/en/ini.core.php#ini.short-open-tag

      short_open_tag 布尔值

      告诉 PHP 是否应该允许 PHP 的 open 标记的缩写形式 ()。如果您想将 PHP 与 XML 结合使用,您可以禁用此选项以使用内联。否则,您可以使用 PHP 打印它,例如:'; ?>。此外,如果禁用,则必须使用 PHP 开放标记 () 的长格式。

      要在您的服务器上运行,必须在您的php.ini 中启用short_open_tag。写法没有对错之分,但有些人更喜欢旧的长写方式&lt;?php ... ?&gt;,比如我,因为我觉得它更容易阅读。

      &lt;?= 也是如此,这是 PHP 文档所说的

      echo 还有一种快捷语法,您可以在开始标签后立即加上等号。在 PHP 5.4.0 之前,此短语法仅适用于启用 short_open_tag 配置设置。

      有关回声的更多信息:

      http://php.net/manual/en/function.echo.php

      【讨论】:

      • 请注意,在很多服务器上,short_open_tags 是禁用的,所以如果您不维护自己的服务器,最好不要依赖此功能。