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

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

回复讨论(解决方案)

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

Parse error: syntax error, unexpected 'echo' (T_ECHO), expecting ')' in .....

就是这么规定的,没有为什么

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

好奇怪的写法

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

Parse error: syntax error, unexpected 'echo' (T_ECHO), expecting ')' in .....

就是这么规定的,没有为什么

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

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

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

好奇怪的写法

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

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

Parse 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 <= 10; echo $i, $i++);

上面的写法 确实蛮奇怪的

语法错了,改这样for($i=1;$i<=10;$i++){ echo $i;}

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

版主已经回答你了,因为print成功始终会返回1,而echo没有返回值,所以原语句相当于for($i=1;$i<=10;1){$i++;}和for($i=1;$i<=10;){$i++;},显然echo会出错

赞同7楼+1

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值