当前位置:首页 > PHP教程 > php日期 > 列表

PHP求天数常犯的错误详解

发布:smiling 来源: PHP粉丝网  添加日期:2014-07-15 14:09:22 浏览: 评论:0 

按N天分隔时间,求出每一个时间段的开始和结束,例如按7天分隔里头,求当前时间所处的区间的开始和结束,要注意时区.

注意,不要简单地对时间戳取模,而是要对时间戳与开始时间(1970-01-01)的距离进行取模,代码如下:

  1. <? 
  2. $step = 7; 
  3. $zerotime = strtotime('1970-01-01'); // 不一定是0! 
  4. $span = ($time - $zerotime) % ($step * 86400); 
  5. $stime = $time - $span
  6. $etime = $stime + ($step * 86400) - 1; 
  7. $sdate = date("Y-m-d H:i:s"$stime); 
  8. $edate = date("Y-m-d H:i:s"$etime); 
  9. ?> 

注意:Asia/Chongqing 时区,php 5.2.14,代码如下:

strtotime('1980-5-1 01:00:00') - strtotime('1980-5-1 00:00:00'); // 输出 0!

Tags: PHP求天数 错误详解

分享到: