Rumah > pembangunan bahagian belakang > tutorial php > 如何解决php倒计时出现-0的情况

如何解决php倒计时出现-0的情况

墨辰丷
Lepaskan: 2023-03-29 09:24:01
asal
1632 orang telah melayarinya

这篇文章主要介绍了如何解决php倒计时出现-0的情况,实例分析了php倒计时程序出现-0的原因及相应的解决方法,具有一定参考借鉴价值,需要的朋友可以参考下

具体如下:

问题:今天有反馈,说倒计时出现了-0天的情况,我看了看程序,卧槽,当时怎么没测试到

原因是PHP的逻辑判断中 -0 > 0

分析:贴出错的代码

$starttime   = 1362585600; //3.7凌晨
$nowtime   = 1362618921;//3.7早上
$off = ceil(($starttime - $nowtime)/86400); //倒计时
if ($off < 0) {
  $off = 0;
}
$b = $starttime - $nowtime;
$c = $b/86400;
$d = ceil($c);
var_dump(array(&#39;start-now&#39;=>$b), array(&#39;float_day&#39;=>$c), array(&#39;int_day&#39;=>$d), array(&#39;off&#39;=>$off));
if (-0 < 0) {
  echo &#39;-0 < 0&#39;;
} else {
  echo &#39;-0 > 0&#39;;
}
Salin selepas log masuk

输出:

array
 &#39;start-now&#39; => int -33321
array
 &#39;float_day&#39; => float -0.385659722222
array
 &#39;int_day&#39; => float -0
array
 &#39;off&#39; => float -0
-0 > 0
Salin selepas log masuk

过程:

当开始时间和当前时间是同一天时,上边的计算过程由于 -0 > 0 所以会出现 off = -0 的情况

改进:

$starttime   = 1362585600; //3.7凌晨
$nowtime   = 1362618921;//3.7早上
if (($starttime - $nowtime) < 0) {
  $off = 0;
} else {
  $off = ceil(($starttime - $nowtime)/86400);
}
Salin selepas log masuk

总结:以上就是本篇文的全部内容,希望能对大家的学习有所帮助。

相关推荐:

php中final关键字用法详解

php中static和const关键字用法

php中this关键字用法分析详解

Atas ialah kandungan terperinci 如何解决php倒计时出现-0的情况. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan