格式化时,DateTime是一个月的假?

时间:2013-07-24 19:57:34

标签: oop datetime php-5.4

我遇到了这个,并认为我的服务器很疯狂,但在测试之后 Codepad我遇到了同样的结果。使用Datetime后尝试和 处理我的日期戳我最后一天和一个月关闭我的原始日期 在尝试格式化回字符串后?这里有什么疯狂的事情?

这是代码

echo $obj->attributes->timestamp; // output: Jun 25, 2013 11:43:52:875 AM

$date = New \DateTime();

$date->createFromFormat(
    'M j, Y h:i:s:B A',
    $obj->attributes->timestamp
);

echo $date->format('M j, Y'); // output: Jul 24, 2013 

1 个答案:

答案 0 :(得分:4)

public static DateTime DateTime::createFromFormat ( string $format , string $time [, DateTimeZone $timezone ] )

它是静态的并返回新的DateTime,但您没有使用返回值,而是通过调用DateTime空构造函数创建的当前日期。

来自PHP docs的示例,如何正确使用它:

<?php
$date = DateTime::createFromFormat('j-M-Y', '15-Feb-2009');
echo $date->format('Y-m-d');