Как запустить задание cron на основе записей в базе данных, используя laravel? - PullRequest
4 голосов
/ 01 октября 2019

В моем приложении я использую одну функциональность, которую мне нужно запустить в определенное время. Я сэкономил это время в своей базе данных. Исходя из этого мой планировщик запустит функционал. В настоящее время я использовал метод cron, который запускает эту функцию каждую минуту. Но не запускайте cron в минуты вроде 2,3,4 и т. Д. Или в любое другое время. Как я могу запустить это? Есть ли какой-то конкретный метод, который принимает какие-либо значения и на основании этого он запускает cron?

Ответы [ 2 ]

1 голос
/ 01 октября 2019

Если я понял, вы хотите выполнить команду cron в определенную дату / время? Вы можете сделать это, используя метод when с функцией закрытия внутри вашей команды расписания cron, которая будет выполняться, если заданная дата / время вернет trueСделайте что-то вроде этого:

$schedule->command('your:command')
            ->when(function(){
               return ('your condition goes here');
            });

Так что, если ваше условие истинно, эта команда будет выполнена.

0 голосов
/ 01 октября 2019

вы выполняете задание crob двумя способами:

  1. запись функции в контроллер и запись маршрута для этой функции. и установите маршрут этой функции в задании cron.

установите cron следующим образом:

wget -O -q -t 1 {url of that function}

for example : wget -O -q -t 1 http://domian.com/xyz/advertisement_expire_if_not_print
с использованием планировщика
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...