我四处寻找,但找不到我要找的确切内容。
我有一个 PHP 设置页面,我的站点的管理员可以选择一天中的一个小时来执行每日 Cron 作业脚本。在我crontab
的脚本中,我每小时运行一次。当脚本运行时,它会检查当前时间是否等于设置页面请求的时间。
我这样做的原因是因为我绝对无法找到crontab
通过 PHP 编辑文件的方法,尽管对主题进行了大量测试和研究。如果你能帮我想办法做到这一点,那就加分。
我提出这个问题的真正原因是因为我的 Unix 服务器的时间存在一些问题。在我的 localhost 机器 (IIS) 上,Cron 脚本按预期每小时执行一次,但是当我将所有内容移到我的 Unix Amazon 机器上时,时间正好相差五个小时。
Cron 作业仍然像预期的那样每小时运行一次,但是当 PHP 脚本检查当前时间(使用date("G")
)是否与设置时间匹配时,它不会像预期的那样工作。当然,它最终会晚了五个小时才得到处理。
我不认为我住在中央时区是巧合,这也恰好是五个小时的休息时间,所以我几乎肯定它与此有关。
我可以写一个变通方法,总是将时间偏移五个小时,但这会导致我的日期字段不准确(我认为),而且有点牵强。我宁愿只是问,因为我确信很多人都在阅读这篇文章并认为我不知道答案是愚蠢的。
还有一件事:
我的脚本中有这行代码。还有什么我需要分享的吗?
date_default_timezone_set('America/Chicago');
编辑:您的“修复”是什么的解释将不胜感激。