1

我有一个使用时区 UTC 存储在数据库中的日期,该日期比现在提前几天/几小时/几分钟。然后我需要计算现在和给定日期之间的时间差,记住可能有不同的时区在起作用。

我一直在做以下事情,但这是错误的,因为没有考虑时区。

$interval = date_create('now')->diff(date_create($listing_end_date));
//$interval->d = days
//$interval->h = hours
//$interval->i = minutes

如何在考虑时区的情况下执行上述操作?

4

1 回答 1

2

您需要传递第二个参数来date_create告诉它哪个时区由$listing_end_date. 例如,假设字符串是 UTC:

$interval = date_create('now')->diff(date_create($listing_end_date, 
                                                 new DateTimeZone('UTC')));
于 2012-04-25T17:01:37.333 回答