Метод twiceDaily
Метод twiceDaily класса Schedule определяет, что задача должна выполняться дважды в день в указанные часы. Первым параметром передаётся час первого выполнения, вторым параметром - час второго выполнения. Часы указываются в 24-часовом формате от 0 до 23. Если часы не указаны, по умолчанию используются значения 1 и 13 (1:00 и 13:00).
Синтаксис
<?php
use IlluminateConsoleSchedulingSchedule;
$schedule->twiceDaily($firstHour, $secondHour);
?>
Пример
Давайте запланируем выполнение команды inspire дважды в день в 2:00 и 18:00:
<?php
namespace AppConsole;
use IlluminateConsoleSchedulingSchedule;
use IlluminateFoundationConsoleKernel as ConsoleKernel;
class Kernel extends ConsoleKernel
{
protected function schedule(Schedule $schedule)
{
$schedule->command('inspire')->twiceDaily(2, 18);
}
}
?>
Пример
Давайте запланируем выполнение замыкания для очистки временных файлов дважды в день в 9:30 и 21:30:
<?php
namespace AppConsole;
use IlluminateConsoleSchedulingSchedule;
use IlluminateFoundationConsoleKernel as ConsoleKernel;
class Kernel extends ConsoleKernel
{
protected function schedule(Schedule $schedule)
{
$schedule->call(function () {
$files = glob('/tmp/*.tmp');
foreach ($files as $file) {
unlink($file);
}
})->twiceDaily(9, 21);
}
}
?>
Пример
Давайте запланируем выполнение задачи в 6:30 и 22:30 с использованием метода twiceDailyAt для указания минут:
<?php
namespace AppConsole;
use IlluminateConsoleSchedulingSchedule;
use IlluminateFoundationConsoleKernel as ConsoleKernel;
class Kernel extends ConsoleKernel
{
protected function schedule(Schedule $schedule)
{
$schedule->command('queue:work')->twiceDailyAt(6, 22, 30);
}
}
?>
Результат выполнения кода:
"Task scheduled at 6:30 and 22:30"
Смотрите также
-
метод
daily,
который запускает задачу ежедневно в полночь -
метод
hourly,
который запускает задачу каждый час -
метод
everyMinute,
который запускает задачу каждую минуту -
метод
cron,
который позволяет задать произвольное расписание в формате cron