这个符号在 PHP 中是啥意思 <?=
Posted
技术标签:
【中文标题】这个符号在 PHP 中是啥意思 <?=【英文标题】:What does this symbol mean in PHP <?=这个符号在 PHP 中是什么意思 <?= 【发布时间】:2010-12-30 03:38:23 【问题描述】:这个符号在 php <?=
中是什么意思?
示例用法:
<h2>Manage Role: > (<?= $myACL->getRoleNameFromID($_GET['roleID']); ?>)</h2>
【问题讨论】:
无论你使用短<?=
还是长<?php echo
,你仍然需要htmlspecialchars()
。
What does <?= mean? 的可能重复项
What does '<?=' mean in PHP?的可能重复
【参考方案1】:
与<?php echo $myACL->getRoleNameFromID($_GET['roleID']); ?>
功能相同
【讨论】:
虽然重要的是要注意,在 PHP 5.4.0 之前,短回显语法仅适用于启用 short_open_tag 配置设置,默认情况下是关闭的。 ' 执行性能有区别吗 【参考方案2】:它是相当于打印的 PHP 短标签。
来自 PHP INI:
在开发用于重新分发的代码时,不鼓励使用短标签 ;因为目标服务器可能不支持短标签。
请参阅 *** 上的“Are PHP Short Tags Acceptable to Use?”。
【讨论】:
【参考方案3】:The <?= ... > tag says to execute whatever is in ... and output the results.
【讨论】:
【参考方案4】:添加到 Mark 的答案:必须启用 short_tags 选项,<?=
语法才能有效。当移动到禁用此选项的服务器时,这会带来主要的可移植性问题。
See the PHP Manual for more info on short tags
【讨论】:
用户不能简单地调用ini_set('short_open_tag', 1)
来覆盖吗?或者如果短标签被禁用,ini_set
功能通常也会被禁用吗?
@Doug:实际上,当用户被允许调用ini_set
时,文件已经被解析了。所以到那时为时已晚。如果可以的话,最好的替代方法是在.htaccess
或httpd.conf
中使用指令。
MikeB,short_open_tag
选项不再适用于 <?=
as of PHP 5.4。以上是关于这个符号在 PHP 中是啥意思 <?=的主要内容,如果未能解决你的问题,请参考以下文章