所以我有一个脚本可以对 32、48 和 72 小时前进行多次检查。
基本上我会检查数据库中至少 x 小时前的条目。
现在效果很好,如下所示:
$date = date('Y-m-d H:i:s',strtotime('-32 hours'));
$q = "SELECT * FROM `table` WHERE `date` <= '".$date."'";
现在我希望排除周末。我知道你可以使用weekdays
within strtotime
为了达到这种效果,但这并不能持续几个小时。
48 小时很容易,因为我可以简单地执行以下操作:
echo date('Y-m-d H:i:s',
strtotime(date("Y-m-d H:i:s").
" -2 weekdays ".
date('H:i:s')));
72小时也很容易,因为只有3天。然而 32 小时会带来问题,因为它是 ±1.3 天。
总之,如何获取 32 小时前(不包括周末)的日期时间。
Use strtotime
正如您最初所做的那样:
$time = strtotime('-32 hours');
然后手动进行周末/工作日计算。
// If the day is Sunday or Saturday subtract a full day.
while (date('w', $time) % 6 == 0) {
$time = strtotime('-1 day', $time);
}
$date = date('Y-m-d H:i:s', $time);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)