【问题标题】:What does this symbol mean in PHP <?=这个符号在 PHP 中是什么意思 <?=
【发布时间】:2010-12-30 03:38:23
【问题描述】:

这个符号在 PHP &lt;?= 中是什么意思?

示例用法:

<h2>Manage Role: > (<?= $myACL->getRoleNameFromID($_GET['roleID']); ?>)</h2> 

【问题讨论】:

标签: php symbols


【解决方案1】:

&lt;?php echo $myACL-&gt;getRoleNameFromID($_GET['roleID']); ?&gt;功能相同

【讨论】:

  • 虽然重要的是要注意,在 PHP 5.4.0 之前,短回显语法仅适用于启用 short_open_tag 配置设置,默认情况下是关闭的。
  • ' 执行性能有区别吗
【解决方案2】:

它是相当于打印的 PHP 短标签。

来自 PHP INI:

在开发用于重新分发的代码时,不鼓励使用短标签 ;因为目标服务器可能不支持短标签。

请参阅 StackOverflow 上的“Are PHP Short Tags Acceptable to Use?”。

【讨论】:

    【解决方案3】:
    The <?= ... > tag says to execute whatever is in ... and output the results.
    

    【讨论】:

      【解决方案4】:

      添加到 Mark 的答案:必须启用 short_tags 选项,&lt;?= 语法才能有效。当移动到禁用此选项的服务器时,这会带来主要的可移植性问题。

      See the PHP Manual for more info on short tags

      【讨论】:

      • 用户不能简单地调用ini_set('short_open_tag', 1) 来覆盖吗?或者如果短标签被禁用,ini_set 功能通常也会被禁用吗?
      • @Doug:实际上,当用户被允许调用ini_set 时,文件已经被解析了。所以到那时为时已晚。如果可以的话,最好的替代方法是在.htaccesshttpd.conf 中使用指令。
      • MikeB,short_open_tag 选项不再适用于 &lt;?= as of PHP 5.4
      猜你喜欢
      • 2011-04-13
      相关资源
      最近更新 更多