for($s=0;$s<=1;$s+=0.05){
echo $s."<br>";
}
在这个循环中为什么没办法显示1出来?
还有就是
for($s=0;$s<=0;$s+=0){
echo $s."<br>";
}
在PHP中怎么会是死循环呢?请各位大大帮助解答一下。
echo $s."<br>";
}
在这个循环中为什么没办法显示1出来?
还有就是
for($s=0;$s<=0;$s+=0){
echo $s."<br>";
}
在PHP中怎么会是死循环呢?请各位大大帮助解答一下。
解决方案 »
- 前台js获取不到ajax返回的数据,请高手指点?在线等待,谢谢.
- php 生成csv文件时西欧字符显示乱码
- 初学php,请问php开发环境我应该用什么环境呢?!
- 如何去除网页中的中文?
- PHP Web MVC 框架 CodeIgniter 中国网站及社区正式上线!
- php+ajax查询几十万条域名的mx记录然后去数据库比对执行增删改查的操作!
- 请教关于获取url的问题?
- 关于网页自动更新的一点思路
- 关于做计数统计系统的一个问题:怎样统计所有年份的每月访问量
- phpmywind 修改上传图片路径.
- 请问如何设置才能让我的apache+php网站只能通过我特定域名访问?
- 关于PHP版本问题,在线急等
第2个循环,每次循环都是加0,0<=0;条件成立,死循环了
for($s=0;$s<=1;$s+=0.05){
echo $s."<br>";
}
var_dump($s>1);//根据你的结果,猜测,这里是true
部分浮点数,不能在不损失一点点精度的情况下转化为二进制,,有兴趣你自己试试看,比如0.7尽量避免类似的循环控制条件
for($s = 0; $s <= 1; $s += 0.05){
echo $s."<br>";
}
echo ($s - 1);
你可以看到输出的是2.2204460492503E-16
至于第二个问题,自己仔细去看下,很简单的错误
这是个很google的问题,不适合用来讨论。
echo $i."<br>";
}
自变量当然是越精确越好,同时最好是整数。精度高,而且速度快