我在使用 PHP 时遇到了一个有趣的问题date()
功能。还没有运气在 SO 上找到有关此问题的讨论或使用 Google,但也许其他人以前遇到过同样的问题?
我正在尝试获取给定时间戳的年份和年份。这是我正在使用的代码:
date("Y-\WW");
截至今天,其正确输出:2011-W39
.
问题是在提供时间戳时,如果有问题的时间戳是 2011 年 1 月 3 日(实际上是“2010 年第 52 周”的一部分)。PHP 正确返回 W52,但它也返回 2011 年作为年份,而不是 2010 年。
date("Y-\WW", 1294016400);
输出:2011-W52
关于如何解决这个问题有什么想法吗?我应该指出,虽然在这种情况下很容易比较strtotime()
的输出大于电流time()
并进行调整,但我需要一个也适用于前几年的解决方案(例如,如果 2010 年 1 月 3 日发生了同样的事情)。
该死,显然我没有足够仔细地重新阅读文档,这封信o
PHP 5.1.0 中添加:
从文档中date():
ISO-8601 年份号。它与 Y 具有相同的值,但如果 ISO 周数 (W) 属于上一年或下一年,则使用该年。 (在 PHP 5.1.0 中添加)
所以我的代码应该是date("o-\WW");
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)