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脚本的10个技巧(4)
Oct 09 PHP
php 删除cookie和浏览器重定向
Mar 16 PHP
PHP+SQL 注入攻击的技术实现以及预防办法
Dec 29 PHP
php模拟socket一次连接,多次发送数据的实现代码
Jul 26 PHP
PHP文件上传主要代码讲解
Sep 30 PHP
PHP生成Gif图片验证码
Oct 27 PHP
PHP远程采集图片详细教程
Jul 01 PHP
php获取汉字拼音首字母的方法
Oct 21 PHP
从性能方面考虑PHP下载远程文件的3种方法
Dec 29 PHP
PHP中array_keys和array_unique函数源码的分析
Feb 26 PHP
[原创]PHP global全局变量经典应用与注意事项分析【附$GLOBALS用法对比】
Jul 12 PHP
tp5框架的增删改查操作示例
Oct 31 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
菜鸟学PHP之Smarty入门
2007/01/04 PHP
一个php短网址的生成代码(仿微博短网址)
2014/05/07 PHP
PHP针对常规模板引擎中与CSS/JSON冲突的解决方法
2014/08/19 PHP
php静态文件生成类实例分析
2015/01/03 PHP
PHP7匿名类用法分析
2016/09/26 PHP
Google 静态地图API实现代码
2010/11/19 Javascript
Jquery中LigerUi的弹出编辑框(实现方法)
2013/07/09 Javascript
将HTML格式的String转化为HTMLElement的实现方法
2014/08/07 Javascript
JavaScript中的函数嵌套使用
2015/06/04 Javascript
写给小白的JavaScript引擎指南
2015/12/04 Javascript
探寻JavaScript中this指针指向
2016/04/23 Javascript
jquery 键盘事件的使用方法详解
2017/09/13 jQuery
解析Angular 2+ 样式绑定方式
2018/01/15 Javascript
Vue实现点击时间获取时间段查询功能
2020/08/21 Javascript
vue中的数据绑定原理的实现
2018/07/02 Javascript
微信小程序搭建(mpvue+mpvue-weui+fly.js)的详细步骤
2018/09/18 Javascript
浅谈Vue.js 中的 v-on 事件指令的使用
2018/11/25 Javascript
Vue的路由及路由钩子函数的实现
2019/07/02 Javascript
原生js+css调节音量滑块
2020/01/15 Javascript
python使用rsa加密算法模块模拟新浪微博登录
2014/01/22 Python
使用python实现rsa算法代码
2016/02/17 Python
Django 重写用户模型的实现
2019/07/29 Python
Python字符串三种格式化输出
2020/09/17 Python
python中的split、rsplit、splitlines用法说明
2020/10/23 Python
pytorch 把图片数据转化成tensor的操作
2021/03/04 Python
HTML5 文件上传下载的实例代码
2017/07/03 HTML / CSS
Fashion Eyewear美国:英国线上设计师眼镜和太阳镜的零售商
2016/08/15 全球购物
高级技校毕业生自荐信
2013/11/18 职场文书
个人存款证明书
2014/10/18 职场文书
2014年依法行政工作总结
2014/11/19 职场文书
事业单位岗位说明书
2015/10/08 职场文书
go 原生http web 服务跨域restful api的写法介绍
2021/04/27 Golang
Python中X[:,0]和X[:,1]的用法
2021/05/10 Python
Python爬取用户观影数据并分析用户与电影之间的隐藏信息!
2021/06/29 Python
python数据可视化使用pyfinance分析证券收益示例详解
2021/11/20 Python
带你了解Java中的ForkJoin
2022/04/28 Java/Android