>백엔드 개발 >PHP 튜토리얼 >请教:为什么 for($i=1;$i<=10;print $i++); 中的print不能换成echo呢?

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

WBOY
WBOY원래의
2016-06-23 09:15:091685검색

请教:为什么 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

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.