php倒计时出现-0情况的解决方法
程序员文章站
2024-02-26 13:40:04
本文实例讲述了php倒计时出现-0情况的解决方法。分享给大家供大家参考,具体如下:
问题:今天有反馈,说倒计时出现了-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('start-now'=>$b), array('float_day'=>$c), array('int_day'=>$d), array('off'=>$off)); if (-0 < 0) { echo '-0 < 0'; } else { echo '-0 > 0'; }
输出:
array 'start-now' => int -33321 array 'float_day' => float -0.385659722222 array 'int_day' => float -0 array 'off' => float -0 -0 > 0
过程:
当开始时间和当前时间是同一天时,上边的计算过程由于 -0 > 0 所以会出现 off = -0 的情况
改进:
$starttime = 1362585600; //3.7凌晨 $nowtime = 1362618921;//3.7早上 if (($starttime - $nowtime) < 0) { $off = 0; } else { $off = ceil(($starttime - $nowtime)/86400); }
ps:本站还提供了一个unix时间戳转换工具,非常实用,提供给大家参考:
unix时间戳(timestamp)转换工具:
更多关于php相关内容感兴趣的读者可查看本站专题:《php日期与时间用法总结》、《php数学运算技巧总结》、《php数组(array)操作技巧大全》、《php数据结构与算法教程》、《php程序设计算法总结》、《php正则表达式用法总结》、《php运算与运算符用法总结》、《php字符串(string)用法总结》及《php常见数据库操作技巧汇总》
希望本文所述对大家php程序设计有所帮助。
下一篇: git hub 使用
推荐阅读
-
PHP下打开phpMyAdmin出现403错误的问题解决方法
-
php读取mysql中文数据出现乱码的解决方法_PHP教程
-
php生成二维码时出现中文乱码的解决方法,_PHP教程
-
PHP 出现乱码和Sessions验证问题的解决方法!_PHP
-
php使用fgetcsv读取csv文件出现乱码的解决方法,
-
浏览UTF-8编码的网页出现空白解决方法_PHP教程
-
php读取csv文件后,uft8 bom导致在页面上显示出现问题的解决方法_PHP教程
-
如何解决linux环境下php读取csv文件,出现中文读取不到的情况
-
php倒计时出现-0情况的解决方法
-
php版微信公众平台回复中文出现乱码问题的解决方法