[英]PHP DateTime->format incorrect year
当使用php DateTime对象获取月份的最后一天的日期时,年份总是不正确的。
我的代码是:
$d = new DateTime();
$d->modify('last day of this month');
$formattedDateTime = $d->format('Y-m-d H:i:s')
除了返回的年份是7168而不是2012之外,其他所有内容都是正确的。
任何人都知道是什么原因造成的吗?
正如其他人所说,它也对我有效(PHP 5.4.3)。 但是,某些最新的PHP版本在日期/时间代码中存在一些错误,因此,请尝试升级您的安装,看看是否有帮助。
话虽如此,您应该只将字符串直接传递给构造函数,而不要使用DateTime::modify()
:
$d = new DateTime('last day of this month');
$formattedDateTime = $d->format('Y-m-d H:i:s');
它似乎与您的PHP版本有关。
我将其视为“ PHP DateTime相对格式”页面上的最后一条评论
应该注意的是,这些字符串中的某些显然仅在PHP 5.3中有效,例如:“本月的第一天”和“本月的最后一天”。 根据在另一个网站上找到的信息,PHP 5.3中添加了“ xxx day of”功能。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.