yii2,将现有的unix值转换为查询中的时间戳

时间:2018-05-08 13:59:09

标签: yii2

使用Unix时间戳而不是时间戳作为列的令人兴奋的项目,所以我需要使这些值可读时间戳,有没有办法在查询本身内执行此操作?

     $query = (new \yii\db\Query())
     ->select(['a.created_at',
               'a.updated_at',
                ])
     ->from(['a' => 'product'])
     ->all();

//想法

'created_at' => date('Y-m-d H:i:s')

1 个答案:

答案 0 :(得分:0)

这应该对你有用

$query = (new \yii\db\Query())
     ->select([new \yii\db\Expression('from_unixtime(a.updated_at) as updatedAt,
                                       from_unixtime(a.created_at) as createdAt')])
     ->from(['a' => 'product'])
     ->all();

或者您可以使用FROM_UNIXTIME(UNIX_TIMESTAMP(),'%Y %D %M %h:%i:%s %x');创建所需的格式,例如2015 13th November 10:08:01 2015。有关详细信息,请参阅HERE