lkf1100 发表于 2015-07-14 18:06

计算天是正确的,为啥计算几个小时后就会出错呢?

   
   现在有这样一个需求,想知道从某个时间点开始计算几个小时后的时间点。
比如,现在是 2015-07-14 17:00:00我需要计算4个小时后是几点   应该是 2015-07-14 21:00:00代码我是这样写的<?php

date_default_timezone_set('PRC'); //默认时区

echo
"今天:",date("Y-m-d",time()),"<br>";


echo "今天:",date("Y-m-d",strtotime("18 june
2008")),"<br>";

echo "昨天:",date("Y-m-d",strtotime("-1 day")),
"<br>";

echo "明天:",date("Y-m-d",strtotime("+1 day")),
"<br>";

echo "一周后:",date("Y-m-d",strtotime("+1 week")),
"<br>";

echo "一周零两天四小时两秒后:",date("Y-m-d G:H:s",strtotime("+1 week 2 days 4
hours 2 seconds")), "<br>";

echo "下个星期四:",date("Y-m-d",strtotime("next Thursday")),
"<br>";

echo "上个周一:".date("Y-m-d",strtotime("last
Monday"))."<br>";

echo "一个月前:".date("Y-m-d",strtotime("last
month"))."<br>";

echo "一个月后:".date("Y-m-d",strtotime("+1
month"))."<br>";

echo "十年后:".date("Y-m-d",strtotime("+10
year"))."<br>";

?>
执行后是这个样子的今天:2015-07-14
今天:2015-06-18
昨天:2015-07-13
明天:2015-07-15
一周后:2015-07-21
一周零两天四小时两秒后:1970-01-01 8:08:00
下个星期四:2015-07-16
上个周一:1970-01-01
一个月前:1970-01-01
一个月后:2015-07-15
十年后:2015-07-14明天,和一周后都正常,但 一周零两天四小时两秒后显示错误   1970-01-01 8:08:00
这是怎么回事呢?

substr函数 发表于 2015-07-14 19:19

回复 1# lkf1100
一起面对真实!一周零两天四小时两秒后:1970-01-01 8:08:00
一周零两天四小时两秒后:1437664127
一周零两天四小时两秒后:2015-07-23 23:23:37PHP 5.5.14<?php
date_default_timezone_set('PRC'); //默认时区
echo "一周零两天四小时两秒后:",date("Y-m-d G:H:s",strtotime("+1 week 2 days 4
hours 2 seconds"));
echo "\n";
echo "一周零两天四小时两秒后:",strtotime("+1 week 2 days 4 hours 2 seconds");
echo "\n";


echo "一周零两天四小时两秒后:",date("Y-m-d G:H:s",1437663997);
echo "\n";


?>
页: [1]
查看完整版本: 计算天是正确的,为啥计算几个小时后就会出错呢?