之间有什么区别
<?php echo '$test'; ?>
和
<?=$test?>
答案 0 :(得分:10)
假设你真的意味着<?php echo $test; ?>
,那两者实际上是相同的。问题是,你想要多么便携。支持PHP的任何地方都支持<?php ?>
,但许多管理员禁用<?= ?>
语法。
答案 1 :(得分:8)
前者输出文字字符串$test
,后者输出值$test
。
答案 2 :(得分:3)
<?= $test ?>
与<?php echo $test; ?>
自PHP 5.4.0以来,无论短标签上的php.ini设置如何,<?= ... ?>
标记始终可用,而 short_open_tag 指令仅controls <? ... ?>
标记
另外,relevant answer。
通常建议不要使用短标签,但仅将它们用于模板中的简单输出非常方便,较长版本仅用于更复杂的逻辑。这使得PHP代码更易于阅读。
答案 3 :(得分:1)
我倾向于使用<?= ?>
(名为short_open_tags
)来模板或脚本的“视图”部分。但是这必须在php.ini中明确启用,所以如果你正在编写一个脚本进行分发,最好避免使用它,除非你不关心脚本的买家/用户是否可能没有{{1开启了。