我如何比较现在和日期时间? Laravel 5.3

时间:2017-03-17 18:04:15

标签: php laravel laravel-5.3

我的代码是这样的:

foreach ($orders as $order) 
{
    date_default_timezone_set('Asia/Jakarta');
    $now_at = date("Y-m-d H:i:s");
    $delivered_at = $order->delivered_at->toDateTimeString();
    $delivered_after_1d = strtotime("+1 day", strtotime($delivered_at));
    $delivered_after_1d = date('Y-m-d H:i:s', $delivered_after_1d);
    if($now_at > $delivered_after_1d) 
    {
        ...
    }
}

它有效

但我想用laravel改变它。例如,使用Carbon::now()。但我很困惑

有没有人可以帮助我?

注意:

deliver_at:数据类型=日期时间

2 个答案:

答案 0 :(得分:1)

你可以写这个。希望这能解决您的问题

foreach ($orders as $order) 
{
    date_default_timezone_set('Asia/Jakarta');
    $now_at = Carbon::now();
    $delivered_at = $order->delivered_at->toDateTimeString();
    $delivered_after_1d = $delivered_at->addDays(1);
    if($now_at > $delivered_after_1d) 
    {
     ...
    }
}

同时在控制器的开头写上use Carbon\Carbon;

答案 1 :(得分:0)

你可以在protected $dates = ['array','of','fields'] 下的模型中添加字段名称,它们将被转换为碳实例