Ad

How To Set An Event For Every Other Wednesday In Laravel

- 1 answer

Laravel has a lot of options for artisan commands scheduling but I've been trying to get one to run every other Wednesday and haven't find the right combination of functions, do any of you have an idea on how to achieve this, did you test it?

Thanks!

Ad

Answer

Well crons can be specified to run on certain days of the week. Using Laravel's scheduler you could start running it every Wednesday like this:

app/Console/Kernel.php

protected function schedule(Schedule $schedule)
{
    $schedule->command('foo')
        ->wednesdays()
        ->when(function () {
            return Carbon::now()->weekOfYear % 2 == 0;
        });
}

edit: using the when function as suggested in the comments is prettier. It has all time logic in 1 place.

Ad
source: stackoverflow.com
Ad