PHP与MySQL日期字段的日期比较

时间:2013-06-14 15:36:27

标签: php

我正在尝试将当前日期与名为“expiry_date”的MySQL查询返回的日期字段进行比较。此字段是格式为YYYY-MM-DD的日期字段,我正在使用If Else,初始化变量,结果如下:

$today = $expiry_date = date("d-M-Y", strtotime("now"));
if ($row['expiry_date'] > $today)
{
    $msg="Not Expired";
}
else
{
    $msg="Expired";
}

这似乎不起作用,我将不胜感激如何解决此问题。

3 个答案:

答案 0 :(得分:1)

$today = $expiry_date = new \Datetime();
$row_expiry_date = date_create_from_format('Y-m-d', $row['expiry_date']);
if ($row_expiry_date > $today)
{
     $msg="Not Expired";
} else {
     $msg="Expired";
}

答案 1 :(得分:0)

您有两个选项,您可以将日期格式相同并比较为字符串

$today = $expiry_date = date("Y-m-d", strtotime("now"));
if ($row['expiry_date'] < $today)

或者您可以将行数据转换为unix时间戳以进行比较。

$today = $expiry_date = time();
if (strtotime($row['expiry_date']) < $today)

答案 2 :(得分:0)

您有$today = $expiry_date =$today =$expiry_date =

$today = date("Y-m-d");

if (strtotime($row['expiry_date']) > $strtotime($today))
{
     echo "not expired";
} else {
    echo "expired";
}