我在我的项目中独立使用CakeORM,它运行得很好,但有些东西对我来说没什么意义。如果以不同的方式存储,我从连接表中选择日期或布尔字段。
$users = TableRegistry::get('users')->find();
$users
->hydrate()
->select([
'user_id',
'username',
'dt_last_login'
])
->toArray();
这段代码会让我这样:
Array
(
[0] => Array
(
[user_id] => 1
[username] => 'teste'
[dt_last_login] => DateTime Object
(
[date] => 2016-08-23 08:42:54.000000
[timezone_type] => 3
[timezone] => America/Sao_Paulo
)
)
)
好的,这是预期的行为,现在下一个代码有不同的行为。
$users = TableRegistry::get('users')->find();
$users
->hydrate()
->select([
'user_id',
'username',
'dt_last_login',
'dt_update' => 'users_update.dt_update'
])
->join([
'table' => 'users_update',
'type' => 'left',
'conditions' => ['users.user_id = users_update.user_id']
])
->toArray();
使用这段代码我得到这样的东西:
Array
(
[0] => Array
(
[user_id] => 1
[username] => 'teste'
[dt_last_login] => DateTime Object
(
[date] => 2016-08-23 08:42:54.000000
[timezone_type] => 3
[timezone] => America/Sao_Paulo
)
[dt_update] => 2016-08-23 08:42:54.000000
)
)
如您所见,dt_last_login是一个DateTime对象,dt_update是一个字符串。有没有办法让Cake获取dt_update作为DateTime对象?