我想从MySQL数据库的日期比较我的系统日期,比较应该是系统日期的差异是10天,而不是我日期的日期。
例如我的系统日期:2013-7-31,表格的日期是2013-8-10它应该回复msg“还有10天需要续订。”
我知道如何在php中添加日期,但我不知道如何比较这两个。
$mydt = date("Y-m-d");
$alertday = date('Y-m-d', strtotime($mydt. " + 10 days"));
答案 0 :(得分:2)
使用date_diff()
- > DateTime::diff
$interval = date_diff($date1, $date2); //$date1, $date2 are DateTime objects.
echo $interval->d; //Outputs number of day difference.
可在此处找到更多功能:
答案 1 :(得分:1)
,假设您传递$now = strttotime("now");
的值
然后你可以在MySQL中执行以下操作
WHERE DATE_FORMAT($now "%Y-%m-%d") = DATE_FORMAT(DATE_ADD(DATE_FIELD,INTERVAL -10 DAY), "%Y-%m-%d")
答案 2 :(得分:0)
只需将db表时间转换为正常的unix时间戳减去并在一天内除以秒数
$now = time();
$dbtime = strtotime($tabledate);
$daysleft = ($now-$dbtime) / ( 60*60*24);