PHP ActiveRecord自动格式化日期

时间:2013-08-25 06:40:34

标签: php phpactiverecord

所以似乎PHP ActiveRecord 正在格式化更新时间戳(无论如何我都是这样)

当我打印更新日期时,会显示:

Wed, 05 Jun 2013 21:14:48 +0200

我在DB中的位置:

2013-06-23 20:04:18

只是为了100%确定我使用PDO来检索它显示的记录,正好是我在数据库中看到的格式。

知道为什么会出现这种自动格式化吗?如果有办法纠正它?

感谢。

修改

好的,所以我发现了如何操纵它:

$records->updated->format('Y-m-d');

但是,我仍然想知道它为什么会发生,如果有办法默认设置它。

2 个答案:

答案 0 :(得分:1)

phpactiverecord检索它并将其存储在扩展DateTime的对象中。

通常,您可以为任何->format($yourformat)对象执行DateTime,但对于phpactiverecord子项,如果您不提供默认格式,则会使用该格式。

此扩展程序还有一个调用此toString()的{​​{1}}函数,因此您可以获得默认格式(顺便说一下,您可以在同一个类中设置)。

查看PHPActiveRecord提供的format()类以了解更多信息,但这是发生的事情:

DateTime.php

答案 1 :(得分:0)

您可以全局执行此操作

<强>代码段

ActiveRecord\Connection::$datetime_format = 'Y-m-d H:i:s';
ActiveRecord\DateTime::$DEFAULT_FORMAT = 'db';