PHP比较两个日期不工作

问题描述:

我在一个问题,我需要帮助,因为经过研究,我还没有找到解决方案..我必须在PHP中比较两个日期,现在的日期与数据库中的日期。PHP比较两个日期不工作

写这篇:

strtotime(Date("d/m/Y H:i")) 

正确的返回当前时间戳。 但是写这个:

strtotime($m['start_date']) 

工作,但与时间戳小于当前的时间戳但是$ M响应[“起始日期”]从数据库,它是这样的:“2017年8月23日11:00: 00“... 2017-08-23 11:00:00这个时间戳不可能是现在的时间戳! 而怪异的是,如果我这样写:23/08/2017 11:00:与我传递给格式字符串的正确日期

Date("d/m/Y H:i",strtotime($m['start_date'])) 

它的响应。怎么可能?我必须比较两个时间戳,但输出结果是今天明天... 我测试了很多解决方案,但根本不工作。我曾尝试也以这样写:

strtotime(Date("d/m/Y H:i",strtotime($m['start_date']))) 

但没有什么回报,0 我也试图把第二,但结果是一样的。

我从两个日期的所有愚蠢的比较,帮助我! 今天我肯定讨厌与日期

+0

如果的strtotime的'值(日期( “d /米/ YH:I”))''是然后1512756000' 1分钟后它会'1512756060'小于先前 – C2486

+0

这里的人回答了你的问题,但我认为你会对Carbon PHP的工作结果非常满意 - 它是为使用日期而设计的库。 – piotr

如果您试图比较两个时间戳为什么不使用time()函数,并比较它是否小于,大于或等于从数据库接收到的值的时间戳通过使用strtotime($m['start_date'])例如

$db_time = strtotime($m['start_date']); 
if (time() > $db_time) { 
    /** 
    ** YOUR CODE 
    **/ 
} 
+0

是的,它现在工作!谢谢!但我不知道为什么strtotime(日期(“​​d/m/YH:我”))不返回当前的时间戳。 – Riccardo

+0

@Riccardo我认为这是因为你使用的格式是'date('d/m/YH:i')'所以请检查[这里](http://php.net/manual/en/datetime.formats.php)支持的日期时间格式 – kellymandem