PHP 回显并在 for 循环中打印不同的行为


Php echo and print different behavior in for loop?

示例 1

for($var=1;$var<=5;print $var,$var++);//有效

例 2

for($var=1;$var<=5;echo $var,$var++);//无效

以上两个陈述的行为并不是那么直截了当,任何人都可以解释为什么它们显示出不同的结果吗?

echo是一种语言结构,而不是函数。它没有返回值。 print()是一个函数,并且确实有一个返回值。

参考: http://php.net/echo http://php.net/print

虽然printecho都是语言结构,但为 echo 定义的语法与您正在执行的操作冲突。具体说来:

echo 1, 2, 3, 4;
//output: 1234

这与循环定义的语法相冲突,这就是为什么我认为您不允许在那里使用echo