РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
1389 of 1392 menu

Метод later

Метод later класса Queue позволяет добавить задачу в очередь с указанной задержкой перед выполнением. Первым параметром передаётся время задержки, вторым - имя класса задачи или объект задачи, третьим - данные для задачи (необязательно), четвёртым - имя очереди (необязательно). Время можно указать как число секунд или экземпляр DateTimeInterface. Возвращает идентификатор добавленной задачи.

Синтаксис

<?php Queue::later($delay, $job, $data = '', $queue = null); ?>

Пример

Давайте отправим задачу с задержкой в 10 секунд:

<?php namespace App\Http\Controllers; use App\Jobs\ProcessEmail; use Illuminate\Support\Facades\Queue; class QueueController extends Controller { public function index() { $job = new ProcessEmail(['to' => 'user@example.com']); $delay = 10; $jobId = Queue::later($delay, $job); echo $jobId; } } ?>

Результат выполнения кода:

"Id123456"

Пример

Отправим задачу с задержкой до указанной даты и времени:

<?php namespace App\Http\Controllers; use App\Jobs\SendReport; use Illuminate\Support\Facades\Queue; use Carbon\Carbon; class QueueController extends Controller { public function schedule() { $job = new SendReport(['period' => 'monthly']); $delay = Carbon::now()->addHours(2); $jobId = Queue::later($delay, $job, 'reports', 'high'); echo $jobId; } } ?>

Результат выполнения кода:

"Id789012"

Пример

Использование метода с передачей строки вместо объекта задачи:

<?php namespace App\Http\Controllers; use Illuminate\Support\Facades\Queue; class QueueController extends Controller { public function index() { $job = 'App\Jobs\ProcessPodcast'; $data = ['id' => 42]; $delay = 5; $jobId = Queue::later($delay, $job, $data); echo $jobId; } } ?>

Результат выполнения кода:

"Id345678"

Смотрите также

  • метод push,
    который добавляет задачу в очередь немедленно
  • метод size,
    который возвращает размер очереди
  • метод delay,
    который устанавливает задержку перед отправкой через диспетчер
  • функцию dispatch,
    которая используется для немедленной отправки задачи
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить