Php 如何正确比较datetime和时区与当前时间
如果缓存过期,我需要重新验证它。我的缓存数据如下所示Php 如何正确比较datetime和时区与当前时间,php,datetime,Php,Datetime,如果缓存过期,我需要重新验证它。我的缓存数据如下所示 $cacheData['valid_until'] = "2017-11-23T12:00:00+00:00" //string 我想知道如何正确比较当前日期时间是否小于$cacheData['valid_until'],同时考虑时区 这是我当前的代码 private function checkCacheValidation($cacheData) { $now = (new DateTime()); $cacheTim
$cacheData['valid_until'] = "2017-11-23T12:00:00+00:00" //string
我想知道如何正确比较当前日期时间是否小于$cacheData['valid_until'],同时考虑时区
这是我当前的代码
private function checkCacheValidation($cacheData) {
$now = (new DateTime());
$cacheTime = (new DateTime($cacheData['valid_until']));
if ($now < $cacheTime) {
die('Cache is valid, no need to request new data');
return true;
} else {
die('cache not valid, get new data');
return false;
}
}
有人能检查一下我的做法是否正确吗?你有没有其他建议
如果您需要任何其他信息,请让我知道,我将提供。。。谢谢正如您在中看到的,您可以比较日期时间变量:
$d1 = new DateTime('2008-08-03 14:52:10');
$d2 = new DateTime('2008-01-03 11:11:10');
var_dump($d1 == $d2);
var_dump($d1 > $d2);
var_dump($d1 < $d2);
看来这是一个有效的解决办法
bool(false)
bool(true)
bool(false)