首页 > 解决方案 > 如何正确比较php中相同格式的日期

问题描述

试图做一个简单的日期比较。两个日期的格式都是“YF jS, g:i a”。例如 2018 年 9 月 3 日上午 9:30。

$today = date('Y F jS, g:i a');
$expire = file_get_contents(dirname(__FILE__).'/maintenance/end_time.php');

if($today>$expire){
  unlink(dirname(__FILE__).'/maintenance/end_time.php');
}

我的代码无法正常工作。我也尝试过 strototime() 但这也不成功。

标签: phpdate

解决方案


尝试这个。

$today_dt = new DateTime($today);
$expire_dt = new DateTime($expire);

if ($today_dt > $expire_dt) 
 { /* Do something */ }

更新:日期时间解析器可能不支持日期字符串,因此您可以像这样初始化日期。

$today_dt = DateTime::createFromFormat('Y F jS, g:i a', $today);
$expire_dt = DateTime::createFromFormat('Y F jS, g:i a', $expire);

推荐阅读