示例 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
虽然print和echo都是语言结构,但定义的语法echo与您正在做的事情发生冲突。具体来说:
echo 1, 2, 3, 4;
//output: 1234
这与循环定义的语法冲突,这就是为什么我相信你不允许在echo那里使用。