我有一个计费系统,如果距到期日不到 1 个月,则允许用户续订。例如,假设产品在 2019 年 3 月 10 日到期。今天的日期是 04/09/2019,所以它在 30 天的窗口内,并将显示更新的消息。但是,星期一的日期 (02/09/2019) 或之前的任何日期不在 30 天窗口内,并且不会显示该消息。请记住,我使用的是英国日期系统 DD-MM-YYYY。设法构造了一个 if 语句来检查当前日期是否与指定日期相距 1 个月,但不在该时间内,这就是我需要做的。为此在谷歌上搜索并找不到答案。我可能只是在寻找错误的东西,我不知道。$current_date = date("d-m-Y");$expiry_date = date_create("04-10-2019");$month_prior_date = date_sub($expiry_date, date_interval_create_from_date_string("1 month"));$month_prior_date = date_format($month_prior_date, "d-m-Y");if ($current_date == $month_prior_date) { echo "You are eligible for a renewal.";}
2 回答
绝地无双
TA贡献1946条经验 获得超4个赞
我的非常基本的解决方案是这样的。
获取当前日期
获取固定的到期日期
检查到期日期是否小于今天的日期
激活续订提醒
PHP 代码示例
<?php
$current_date = date( "d-m-Y" );
$expiry_date = date( "d-m-Y", strtotime( "04-10-2019 -1 month" ) );
if ( $expiry_date <= $current_date ) {
echo "You are eligible for a renewal.";
}
测试代码和反馈。
HUH函数
TA贡献1836条经验 获得超4个赞
离开 :
$today = date('d-m-Y');
$expireDate = '02-10-2019';
$maxDate = date('d-m-Y', strtotime($expireDate. ' -30 days'));
if ($today <= $maxDate) {echo "Can Renew";} else {echo "Can not renew";}
- 2 回答
- 0 关注
- 247 浏览
添加回答
举报
0/150
提交
取消