使用m-d-Y格式比较日期

时间:2014-07-03 11:18:07

标签: php

我的日期$current, $start和$ end格式化为m-d-Y。我想有条件 其中它将显示" current"如果当前日期在开始日期和结束日期之间,但我无法弄清楚为什么在世界上它不会打印出我想要的东西。哈哈

样本声明将是

$current = '07-03-2014';
$start = '06-01-2013';
$end = '08-02-2015';

    if(($current > $start) && ($current < $end)) {
    echo "current";
    }
    else {
    "not current";
    }

我怎么了&#34;不是当前&#34;作为输出?我做错了什么?我很确定你也有这个问题。 :d

3 个答案:

答案 0 :(得分:0)

您可以使用strtotime

尝试此操作
$current = '07-03-2014';
$start = '06-01-2013';
$end = '08-02-2015';

    if((strtotime($current) > strtotime($start)) && (strtotime($current) < strtotime($end))) {
    echo "current";
    }
    else {
        echo  "not current";
    }

方法:2

$current = '07-03-2014';
$start = '06-01-2013';
$end = '08-02-2015';


$current_time = strtotime($current);
$start_time = strtotime($start);
$end_time = strtotime($end);

    if(($current_time > $start_time) && ($current_time < $end_time)) {
    echo "current";
    }
    else {
     echo  "not current";
    }

答案 1 :(得分:0)

使用strtotime:

$current = '07-03-2014';
$start = '06-01-2013';
$end = '08-02-2015';
    if((strtotime($current) > strtotime($start)) && (strtotime($current) < strtotime($end))) {
    echo "current";
    }
    else {
    "not current";
    }

答案 2 :(得分:0)

您可以直接与正确格式Y-m-d进行比较或使用strtotime()

$current = date('Y-m-d', strtotime('07-03-2014'));
 $start = date('Y-m-d', strtotime('06-01-2013'));
 $end = date('Y-m-d', strtotime('08-02-2015'));
 if(($current > $start) && ($current < $end)) {
    echo "current";
 }
 else {
    "not current";
 }