php倒计时出现-0情况的解决方法


Posted in PHP onJuly 28, 2016

本文实例讲述了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)转换工具:
http://tools.3water.com/code/unixtime

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
PHP 开发环境配置(Zend Server安装)
Apr 28 PHP
PHP 设置MySQL连接字符集的方法
Jan 02 PHP
php htmlspecialchars()与shtmlspecialchars()函数的深入分析
Jun 05 PHP
探讨PHP删除文件夹的三种方法
Jun 09 PHP
解析获取优酷视频真实下载地址的PHP源代码
Jun 26 PHP
微信扫描二维码登录网站代码示例
Dec 30 PHP
如何让thinkphp在模型中自动完成session赋值小教程
Sep 05 PHP
CentOS下搭建PHP环境与WordPress博客程序的全流程总结
May 07 PHP
PHP面向对象程序设计类的定义与用法简单示例
Dec 27 PHP
php多文件打包下载的实例代码
Jul 12 PHP
PHP PDOStatement::fetchColumn讲解
Jan 31 PHP
PHP获取类私有属性的3种方法
Sep 10 PHP
24条货真价实的PHP代码优化技巧
Jul 28 #PHP
php求今天、昨天、明天时间戳的简单实现方法
Jul 28 #PHP
php字符串操作针对负值的判断分析
Jul 28 #PHP
PHP实现bitmap位图排序与求交集的方法
Jul 28 #PHP
php判断手机浏览还是web浏览,并执行相应的动作简单实例
Jul 28 #PHP
apache php mysql开发环境安装教程
Jul 28 #PHP
Yii中的cookie的发送和读取
Jul 27 #PHP
You might like
全国FM电台频率大全 - 8 黑龙江省
2020/03/11 无线电
mysql_connect localhost和127.0.0.1的区别(网络层阐述)
2015/03/26 PHP
PHP实现获取某个月份周次信息的方法
2015/08/11 PHP
thinkPHP框架RBAC实现原理分析
2019/02/01 PHP
Laravel定时任务的每秒执行代码
2019/10/22 PHP
说说掌握JavaScript语言的思想前提想学习js的朋友可以看看
2009/04/01 Javascript
导航跟随滚动条置顶移动示例代码
2013/09/11 Javascript
js日期相关函数总结分享
2013/10/15 Javascript
Lua表达式和控制结构学习笔记
2014/12/15 Javascript
Javascript 多物体运动的实现
2014/12/24 Javascript
JavaScript中的普通函数与构造函数比较
2015/04/07 Javascript
简单谈谈javascript Date类型
2015/09/06 Javascript
全面接触神奇的Bootstrap导航条实战篇
2016/08/01 Javascript
vue-resouce设置请求头的三种方法
2017/09/12 Javascript
使用nodeJs来安装less及编译less文件为css文件的方法
2017/11/20 NodeJs
Vue实现带进度条的文件拖动上传功能
2018/02/23 Javascript
Vue 让元素抖动/摆动起来的实现代码
2018/05/31 Javascript
微信小程序实现带参数的分享功能(两种方法)
2019/05/17 Javascript
微信小程序wx.navigateTo中events属性实现页面间通信传值,数据同步
2019/07/13 Javascript
在layui中select更改后生效的方法
2019/09/05 Javascript
微信小程序实现拖拽功能
2019/09/26 Javascript
vue 组件之间事件触发($emit)与event Bus($on)的用法说明
2020/07/28 Javascript
Python3基础之输入和输出实例分析
2014/08/18 Python
python中enumerate函数遍历元素用法分析
2016/03/11 Python
梯度下降法介绍及利用Python实现的方法示例
2017/07/12 Python
Python使用当前时间、随机数产生一个唯一数字的方法
2017/09/18 Python
python基于itchat模块实现微信防撤回
2019/04/29 Python
python实现在函数中修改变量值的方法
2019/07/16 Python
菲律宾领先的在线时尚商店:Zalora菲律宾
2018/02/08 全球购物
PHP如何设置和取得Cookie值
2015/06/30 面试题
消防战士优秀事迹材料
2014/02/13 职场文书
党员承诺书内容
2014/03/26 职场文书
投资建议书模板
2014/05/12 职场文书
企业宣传口号
2014/06/12 职场文书
MySQL锁机制
2021/04/05 MySQL
Python万能模板案例之matplotlib绘制直方图的基本配置
2022/04/13 Python