格式化日期1的两个相同代码不起作用

时间:2017-03-14 12:21:33

标签: php laravel laravel-4

我在数据库Time_1Time_2中有两列存储时间戳。

然后在视图中我有这个:

<div class="time">Time_1</div>
<pre>{{ $order->order_date->format('Y/m/d g:i a')}} | {{ \Carbon\Carbon::createFromTimeStamp(strtotime($order->order_date))->diffForHumans() }}</pre>
<div class="time">Time_2</div>
<pre>{{ $order->payment_status_date->format('Y/m/d g:i a') }} | {{ \Carbon\Carbon::createFromTimeStamp(strtotime($order->payment_status_date))->diffForHumans() }}</pre>

预期结果:

Time_1 = 2017/03/14 10:59 am | 1 hour ago
Time_2 = 2017/03/14 10:59 am | 1 hour ago

但是我第二次得到分页符,就像它停止加载那里的页面一样。

该错误对我没有意义:

  

Uncaught TypeError:传递给Illuminate \ Exception的参数1:PlainDisplayer :: display()必须是Exception的实例,给出Error的实例,

var_dump($order->order_date) -> `object(Carbon\Carbon)#457 (3) { ["date"]=> string(26) "2017-03-14 10:59:37.000000" ["timezone_type"]=> int(3) ["timezone"]=> string(3) "UTC" }`

var_dump($order->payment_status_date) -> `string(19) "2016-12-31 07:11:05"`

问题是为什么因为两者都存储为时间戳并且我使用相同的碳...等我有这个区别以及如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

确保在模型中将第二个日期添加到$ dates数组中,因此Laravel知道将其视为Carbon实例。

protected $dates = ['Time_1', 'Time_2'];