Heim >Backend-Entwicklung >PHP-Tutorial >请教:为什么 for($i=1;$i<=10;print $i++); 中的print不能换成echo呢?

请教:为什么 for($i=1;$i<=10;print $i++); 中的print不能换成echo呢?

WBOY
WBOYOriginal
2016-06-23 09:15:091680Durchsuche

请教:为什么 for($i=1;$i


回复讨论(解决方案)

for($i=1;$iParse error: syntax error, unexpected 'echo' (T_ECHO), expecting ')' in .....
就是这么规定的,没有为什么

到底是什么样的需求 需要在 for 上打印?

好奇怪的写法

for($i=1;$iParse error: syntax error, unexpected 'echo' (T_ECHO), expecting ')' in .....
就是这么规定的,没有为什么


开始想是否是print和echo的返回值问题,可又想不明白,想搞懂,求指点!

到底是什么样的需求 需要在 for 上打印?


不是项目实战,就是看手册发现了这个问题......

好奇怪的写法


确实挺奇怪的,平时都没这么写

for($i=1;$iParse error: syntax error, unexpected 'echo' (T_ECHO), expecting ')' in .....
就是这么规定的,没有为什么


开始想是否是print和echo的返回值问题,可又想不明白,想搞懂,求指点!
是的,是返回值的问题,echo 没有返回值,所以不允许那么写

语法错了,改这样

for($i=1;$i<=10;$i++){    echo $i;}

语法错了,改这样

for($i=1;$i<=10;$i++){    echo $i;}


我知道可以这样写,就是想弄懂为什么一行写的时候echo替换print会出错

for ($i = 1; $i 
上面的写法  确实蛮奇怪的

语法错了,改这样

for($i=1;$i<=10;$i++){    echo $i;}


我知道可以这样写,就是想弄懂为什么一行写的时候echo替换print会出错

版主已经回答你了,因为print成功始终会返回1,而echo没有返回值,所以原语句相当于for($i=1;$i

赞同7楼+1

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn