[英]PHP datetime format() incorrect date
我有一个PHP datetime对象,我一直试图用DateTime :: format()转换为字符串。 但这总是给我一个错误的约会。 由于某种原因,无论我给该日期赋予什么值,我都会得到一个比我运行代码的日期早一天的日期。 我的DateTime对象-
object(DateTime) {
date => '2017-03-25 00:00:00'
timezone_type => (int) 3
timezone => 'UTC'
}
我用它来将DateTime格式化为字符串-
$myDateObject->format('Y/m/d')
给我 -
2017/03/23
在打印DateTime对象的行和格式化对象的行之间绝对没有代码,即在该对象上没有进行修改。
如果它有助于服务器date -u
的输出,则返回Fri Mar 24 06:08:39 UTC 2017
。 另外,如果我使用$myDateObject->format('Y/m/dh:i')
用小时和分钟创建日期字符串, $myDateObject->format('Y/m/dh:i')
得到2017/03/23 12:00
编辑
我的date_default_timezone_get()
的输出是UTC
date('Ym-d')
给出2017-03-24
即今天的日期
查看PHP中设置的默认时区
您可能想尝试设置默认时区示例:date_default_timezone_set('America / Toronto');
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.