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

Метод weekdays

Метод weekdays применяется к задаче, определённой в планировщике Laravel, и ограничивает её выполнение только рабочими днями недели (понедельник - пятница). Если задача запланирована на выходной день (суббота или воскресенье), она не будет выполнена. Метод не принимает параметров и возвращает тот же экземпляр задачи для цепочки вызовов.

Синтаксис

<?php $schedule->command($command)->weekdays(); $schedule->job($job)->weekdays(); $schedule->call($callback)->weekdays(); ?>

Пример

Давайте запланируем выполнение команды для отправки отчётов только в рабочие дни недели:

<?php namespace App\Console; use Illuminate\Console\Scheduling\Schedule; use Illuminate\Foundation\Console\Kernel as ConsoleKernel; class Kernel extends ConsoleKernel { protected function schedule(Schedule $schedule) { $schedule->command('reports:send') ->daily() ->weekdays(); } } ?>

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

"Команда reports:send будет выполняться ежедневно, но только в рабочие дни недели"

Пример

Давайте запланируем выполнение задачи с помощью метода job только по рабочим дням:

<?php namespace App\Console; use App\Jobs\ProcessDataJob; use Illuminate\Console\Scheduling\Schedule; use Illuminate\Foundation\Console\Kernel as ConsoleKernel; class Kernel extends ConsoleKernel { protected function schedule(Schedule $schedule) { $schedule->job(new ProcessDataJob()) ->everyFiveMinutes() ->weekdays(); } } ?>

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

"Задача ProcessDataJob будет выполняться каждые 5 минут, но только в рабочие дни"

Пример

Давайте запланируем выполнение замыкания для очистки временных файлов только по рабочим дням:

<?php namespace App\Console; use Illuminate\Console\Scheduling\Schedule; use Illuminate\Foundation\Console\Kernel as ConsoleKernel; class Kernel extends ConsoleKernel { protected function schedule(Schedule $schedule) { $schedule->call(function () { // Очистка временных файлов $tempFiles = glob('/tmp/*.tmp'); foreach ($tempFiles as $file) { unlink($file); } return "Очищено " . count($tempFiles) . " файлов"; }) ->hourly() ->weekdays(); } } ?>

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

"Замыкание будет выполняться каждый час, но только в рабочие дни недели"

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

  • метод weekly,
    который планирует задачу на выполнение еженедельно
  • метод daily,
    который планирует задачу на выполнение ежедневно
  • метод hourly,
    который планирует задачу на выполнение каждый час
  • метод schedule-run,
    который запускает все запланированные задачи
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить