Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 检查db的日期是否超过当前日期的两周_Php_Date_Mysqli_Phpmyadmin - Fatal编程技术网

Php 检查db的日期是否超过当前日期的两周

Php 检查db的日期是否超过当前日期的两周,php,date,mysqli,phpmyadmin,Php,Date,Mysqli,Phpmyadmin,所以我有两个约会: $data_db = 2014-08-24; $curent_date = date(Y-m-d); 代码必须是这样的 <?php if ($data_db > $curent_date with 14 days){ echo "expired"; } else { echo "active"; } ?> 如果当前日期大于两周,则它将显示为过期有很多方法可以做到这一点。这里有一个简单的例子: <?

所以我有两个约会:

$data_db = 2014-08-24;
$curent_date = date(Y-m-d);
代码必须是这样的

<?php if ($data_db > $curent_date with 14 days){

    echo "expired";

    }
    else
    {
    echo "active";
    }
?>

如果当前日期大于两周,则它将显示为过期

有很多方法可以做到这一点。这里有一个简单的例子:

<?php if (strtotime($data_db) > strtotime('+14 days')){

    echo "expired";

    }
    else
    {
    echo "active";
    }
?>

我自己解决了这个问题

        $expire_date = strtotime($time_db . ' + 14 days');

        if (time() > $expire_date){

            $time_to_pay =  "Expired on ".date('Y-m-d', $expire_date);
        }
        else
        {
            $time_to_pay =  "Active but expire on ".date('Y-m-d', $expire_date);
        }

如果我理解正确,那么您需要检查$data_db是否超过两周。这可以通过将日期转换为UNIX时间来实现,并查看$data_db是否低于当前日期减去两周

<?php if (strtotime($data_db) < strtotime('-14 days')) {

    echo "expired";

    }
    else
    {
    echo "active";
    }
?>
如果您需要将其与$current_date进行比较,则可以这样做:

<?php if (strtotime($data_db) < strtotime($current_date) - 86400*14) {

    echo "expired";

    }
    else
    {
    echo "active";
    }
?>
IMHO应该设置为-14天,而不是+。今天-14天到期。