laravel получить через 5 часов данных - PullRequest
0 голосов
/ 31 января 2020

Здравствуйте, это мой laravel проект, в котором я хочу получить данные старше 5 часов. Как я могу это сделать, пожалуйста, дайте мне решение.
Спасибо

    $date = new \DateTime();
    $date->modify('6 hours');
    $formatted_date = $date->format('Y-m-d H:i:s');


    if (Auth::user()->role == 'seller'){
        $orders = Order::where('seller_id', Auth::user()->id)->where('status', '0')->get();
    }
    if (Auth::user()->role == 'curier'){
        $orders = Order::where('curier_id', Auth::user()->id)->where('status', '0')->get();
    }
    if (Auth::user()->role == 'superadmin' || Auth::user()->role == 'manager'){
        $orders = Order::where('status', '0')->get();
    }
    return view($this->view_page_url.'ready_ship', compact('orders'));`

1 Ответ

1 голос
/ 31 января 2020

Данные старше 5 часов, поэтому created_at меньше 5 часов go.

. Вы можете использовать Carbon::now()->subHours(5), чтобы получить время,

и затем получите данные:

$datetime = \Carbon\Carbon::now()->subHours(5)->format("Y-m-d H:i:s");

if (Auth::user()->role == 'seller'){
    $orders = Order::where('seller_id', Auth::user()->id)->where('status', '0');
}
if (Auth::user()->role == 'curier'){
    $orders = Order::where('curier_id', Auth::user()->id)->where('status', '0');
}
if (Auth::user()->role == 'superadmin' || Auth::user()->role == 'manager'){
   $orders = Order::where('status', '0');
}

$orders = $orders->where('created_at', '<=', $datetime)->get();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...