我有一个如下所示的 for 循环
<?php
for($i=0;$i<=10;$i+0.4){
echo $i."<br>";
}
?>
此代码打印 i 的值直到 9.6 而不是 10。
为什么它最后返回i=10的值。
Use +=
来增加它,而不仅仅是加。就像现在一样,对我来说这是一个无限循环。
编辑:由于某种原因,PHP 无法在循环中的不同类型中正常工作。
下面这个应该有效
for($i=0;$i<=100;$i+=4){
echo $i/10."<br>";
}
这是var_dump
int(0)
float(0.4)
float(0.8)
float(1.2)
float(1.6)
int(2)
float(2.4)
float(2.8)
float(3.2)
float(3.6)
int(4)
float(4.4)
float(4.8)
float(5.2)
float(5.6)
int(6)
float(6.4)
float(6.8)
float(7.2)
float(7.6)
int(8)
float(8.4)
float(8.8)
float(9.2)
float(9.6)
int(10)
这可能是 PHP 的自动转换造成的
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)