为什么 strtotime 休息一周?
strtotime("third Saturday October 2011")
应该是 2011 年 10 月 15 日。不过,它将于 2011 年 10 月 22 日发布。我认为这是因为 2011 年 10 月从星期六开始,而 PHP 正在关注第一个整周。由于 10/1/2011 是星期六而不是整周,因此它会忽略它。
一些研究建议在星期几和月份之间加上“of”应该可以解决这个问题,但这不起作用。
关于为什么会发生这种情况以及我可以采取哪些措施来纠正它有什么建议吗?
strtotime("third Saturday October 2011")
Should be 10/15/2011. However, it's coming up at 10/22/2011. I assume this is because October 2011 starts on a Saturday and PHP is looking at the first full week. Since 10/1/2011 is a Saturday not a full week it ignores it.
Some research suggested putting "of" between the day of the week and the month should fix it but that doesn't work.
Any suggestions on why this is happening and what I can do to correct it?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
这是 PHP <5.2.7 中记录的缺陷(请参阅 strtotime):
您需要升级 PHP,或者使用 Jonathan Kuhn 建议的解决方法。
This is a documented flaw in PHP <5.2.7 (see strtotime):
You'll need to upgrade PHP, or use a work around like Jonathan Kuhn suggests.
我在 php 5.2.6 上得到了与你相同的结果。这对我有用,但并不理想。
I was getting the same results as you on php 5.2.6. This works for me although not ideal.
对我来说效果很好。输出为
2011-10-15
。Works fine for me. Output is
2011-10-15
.