我试图修复我不久前购买的PHP脚本,并认为问题在于计算夏令时,因为问题似乎当日期包含在 10 月时发生。它使用压光机和十月份的目前似乎有问题。
我进行了搜索,并在此网站上找到了有关的问题和回复方式一天被添加到时间戳中以满足 DST。然而,在那实例 + 24*60*60 是使用的方法,在我的情况下是 +86400 -虽然两者都得出了相同的数字。
这是我认为有问题的代码:
$day_increase=(strtotime($mysql_checkin_date)+86400);
$mysql_checkin_date = date('Y-m-d',$day_increase);
我想我应该将其更改为"+1 天"而不是 +86400 - 这听起来正确吗?
每当我尝试时,我似乎都会遇到语法错误,所以显然无论如何都没有正确构建它 -这是我尝试的一种方式:
$day_increase=(strtotime($mysql_checkin_date) '+1 day');
我哪里出错了?
提前非常感谢任何帮助!
为了将相对格式与strtotime()
一起使用,您需要传递完整的字符串:
$day_increase = strtotime($mysql_checkin_date . ' +1 day');
假设:$mysql_checkin_date
是MySQL日期格式,即 2013-09-09
.
如果$mysql_checkin_date
是时间戳,则可以将其作为第二个参数传递:
$day_increase = strtotime('+1 day', $mysql_checkin_date);
或者,您可能希望查看更可靠的 DateTime 类。