在PHP中减去日期[重复]
Posted
技术标签:
【中文标题】在PHP中减去日期[重复]【英文标题】:Subtracting dates in PHP [duplicate] 【发布时间】:2011-03-06 15:02:30 【问题描述】:可能重复:How to calculate the difference between two dates using php?
我有以YYYY-MM-DD HH:MM:SS
格式存储的时间戳(例如2010-06-21 20:12:56
)。检查时间戳有多旧的最佳方法是什么?目前,我主要对天数感兴趣。
【问题讨论】:
【参考方案1】:您可以使用strtotime
将字符串转换为UNIX 时间戳,单位为秒。 time()
将为您提供当前的 UNIX 时间戳。减去它们可以得到日期的多少秒,然后除以60*60*24
得到它的天数
使用DateTime::diff 也是可行的,尽管我发现日期函数比使用类更容易
【讨论】:
不要这样做,一旦 DST 发挥作用,你将惨遭失败:`` date_default_timezone_set("Europe/Amsterdam"); $d1 = strtotime("2013-10-27T00:00:00"); $d2 = strtotime("2013-10-28 00:00:00"); var_dump(($d2-$d1)/(60*60*24)); ``输出:双(1.0416666666667)【参考方案2】:$today = strtotime(date('Y-m-d H:i:s'));
$expireDay = strtotime($row['ExpireDate']);
$timeToEnd = $expireDay - $today;
【讨论】:
以上是关于在PHP中减去日期[重复]的主要内容,如果未能解决你的问题,请参考以下文章