post expire after x days

时间:2016-07-26 作者:SURTLER77

我想创建一个代码片段,用于从发布日期起x天后的帖子过期,我尝试了这段代码,但我总是显示真实情况,我做错了什么?

$pfx_date       = get_the_date(\'d/m/Y\');
$datacorrente   = date(\'d/m/Y\', strtotime("-5 days"));

if ( $pfx_date <= $datacorrente ) { 
    echo \'post expired\'; 
} else { 
    echo \'post open\'; 
}
“-5天”是帖子过期后的x天变量。

2 个回复
SO网友:Andy Macaulay-Brook

您正在比较字符串。对于日期,只有使用yyyymmdd格式或类似格式时,才可以执行此操作。

SO网友:Ismail

投票表决Andy的答案时,您应该比较整数以使其生效。strtotime() 可以将任何字符串转换为时间整数,稍后将对其进行比较,以显示差异以及到现在为止经过的秒数(time() ). 如下所示:

$expired = ( ( time() - strtotime(get_the_date(\'Y-m-d H:i:s\')) ) / DAY_IN_SECONDS ) >= 5;
if ( $expired ) { 
    echo \'post expired\'; 
} else { 
    echo \'post open\'; 
}
希望这有帮助。

相关推荐

显示作者姓名PHP(自制插件)

我有一个需要帮助的问题,因为我自己找不到解决办法。我接管了一个网站,之前有人在那里创建了一个自制插件。。使用默认插件“Contact Form 7”,用户可以在页面上创建帖子。()https://gyazo.com/c8b20adecacd90fb9bfe72ad2138a980 )关于自行创建的插件“Contact Form 7 extender”,帖子是通过PHP代码在后台生成的(https://gyazo.com/115a6c7c9afafd2970b66fd421ca76a3)其工作原理如下:如果