Desenvolupament d'Aplicacions

Què és Laravel Schedule?

Laravel Schedule ens permet executar accions que es repeteixen més d'una vegada en el temps i així estalviar-nos haver d'executar una mateixa acció diverses vegades.

Què és Laravel Schedule?

Com utilitzar Laravel Schedule a una botiga online?

Imaginem que cada dia hem de generar un informe de les vendes de la nostra botiga online. No recordarem tots els dies entrar i executar alguna cosa, així que fem un CRON. Editar el CRON pot ser perillós, si en comptes de fer un -l per llistar o un -i per editar posem un -r podem eliminar-ho.

Amb Laravel podem posar només una instrucció al nostre CRON que s'executi cada minut i deixar que sigui el propi framework i el nostre codi el que decideixi quan i què executar. Així que això és el que farem.

Podem definir una acció i després dir-li que ho executi amb aquest format: `->cron('* * * * * *')`, això és el mateix que hem posat al crontab. Aquí podem fer tantes normes com vulguem, però, no seria millor poder dir-li "fes-ho cada 5 minuts"? Doncs el nostre Schedule ens permet fer precisament això: `->everyFiveMinutes();`. 

Hi ha multitud de mètodes que podem utilitzar per definir "quan" s'ha de fer. El "que" no es queda enrere, estem fent un CRON perquè el nostre Laravel realitzi accions, si aquestes accions estan definides a la mateixa aplicació vol dir que no cal 'setejar' php's absurds per aixecar l'aplicació i fer coses complexes, només cal utilitzar el mateix codi que posaríem a un Controller, o alguna cosa similar.

En executar aquestes accions podem voler guardar una espècie de Log, podem executar `->sendOutputTo($filePath)` i simplement tot el que escriguem acabarà en aquest fitxer. També podem enviar un email amb aquest output: `->emailOutputTo('foo@example.com')`, o enviar pings `->pingBefore($ur`)`, `->thenPing($url);`, o realitzar alguna acció just abans o just després de realitzar la principal amb `->before()` i `after()`. 

Les opcions són moltes i variades, a més a més de que només toquem el crontab una sola vegada i ens podem centrar a programar.

Comparteix aquest article

Articles Relacionats