检查来自 db 的日期是不是从当前日期过去两周

Posted

技术标签:

【中文标题】检查来自 db 的日期是不是从当前日期过去两周【英文标题】:Check if date from db passed two weeks from the current date检查来自 db 的日期是否从当前日期过去两周 【发布时间】:2014-10-22 20:05:31 【问题描述】:

所以我有两个日期:

$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";
    
?>

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

【问题讨论】:

【参考方案1】:

如果我理解正确,那么您需要检查 $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";
    
?>

【讨论】:

【参考方案2】:

我自己解决了这个问题!

        $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);
        

【讨论】:

【参考方案3】:

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

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

    echo "expired";

    
    else
    
    echo "active";
    
?>

【讨论】:

恕我直言,您应该设置-14 days,而不是+(today - 14day) &lt; db_date =&gt; expire.

以上是关于检查来自 db 的日期是不是从当前日期过去两周的主要内容,如果未能解决你的问题,请参考以下文章

如何使用jquery检查日期不能小于当前日期?

检查当前日期是不是在两个日期之间 Oracle SQL

检查时区的日期是不是超过当前时间

如何从当前日期 PHP 获取最近 7 周、7 个月的日期范围?

如何用DELPHI当前日期减五十天

Jquery Datepicker选择的日期到下周或两周