Created_at或updated_at未显示完整的dateTime

时间:2017-03-03 21:26:29

标签: php laravel laravel-5 laravel-5.1

在我的laravel应用程序中,我需要比较2个dateTime,created_at和updated_at,但我注意到,当我调用此记录的属性时,不会消除秒,onlu小时和分钟,我需要得到秒,我需要更改或包含显示所有信息?我查看文档并没有找到任何内容。

例如:

$calculation->created_at

输出:

2017-03-03 21:03

在数据库中是:

2017-03-03 21:03:22

3 个答案:

答案 0 :(得分:0)

字符串输出的内容不会影响对象的值。您只需要将两个对象相互比较。

$dateFromDB = $row['date'];
$compareDateTime = new DateTime('1999-12-31');  // some date

if($compareDateTime < srttotime($dateFromDB))
{
   // do stuff...
}

注意使用strtotime功能。这会将字符串转换为unix时间戳(这是一个DateTime对象在引擎盖下)。

http://php.net/manual/en/function.strtotime.php

答案 1 :(得分:0)

在您的模型中,尝试添加:

protected $dates = ['created_at', 'updated_at'];

这将使他们成为Carbon实例,你应该能够做到这样的事情:

if($calculation->created_at == $calculation->updated_at)

或者你会做的任何其他事情。

答案 2 :(得分:0)

created_atupdated_atCarbon的内容,Carbon实例的__toString()返回格式为Y-m-d H:i:s的{​​{3}}。

来源: