我真的很好奇为什么这个短代码的输出并不总是在同一个工作日?
为什么有一天从星期一变成星期天?当我使用strtotime('+1 week', $t);
时,它按预期工作。
谢谢你的解释!
<?php
$t = strtotime('2016-09-19');
for ($i = 0; $i < 12; $i++) {
echo date('w', $t)."'n";
$t += 86400 * 7;
}
?>
因为您正在添加小时数,并且您正在使用夏令时的时区。当你到达11月6日时,夏令时开始,这一天显示前一天。设置您的时区为UTC,或者使用+1 day
代替小时。