【发布时间】:2013-12-19 05:35:08
【问题描述】:
我习惯写一行 if 语句结合 echo 像这样:
<?php echo ( true ) ? 'true' : 'false'; ?>
今天我确实改变了现有的多行 if 语句,echo 最终出现在语句中,这给了我一个解析错误:
<?php ( true ) ? echo 'true' : echo 'false'; ?>
不过,使用 print 而不是 echo 可以让它工作。我认为它可以工作,因为print 是一个函数。 更新:print 不是一个函数,它只是表现得像一个函数,这意味着它有一个返回值。
<?php ( true ) ? print 'true' : print 'false'; ?>
我不明白的是 echo 不起作用的原因。据我了解,上述语法只是常见 if 语句的简写,所以这也不应该起作用:
if (true) echo 'true'; else echo 'false';
但确实如此。有谁知道吗?
【问题讨论】:
-
This 可能会有所帮助
-
只在问题内回答。
标签: php syntax parse-error