Maison  >  Article  >  développement back-end  >  Comment exécuter des tâches Cron dans Laravel

Comment exécuter des tâches Cron dans Laravel

Susan Sarandon
Susan Sarandonoriginal
2024-09-23 06:19:32778parcourir

How To Run Cron Jobs in Laravel

Dans ce tutoriel, je vais vous montrer comment nous pouvons exécuter des tâches cron dans Laravel, mais par-dessus tout, nous garderions les choses simples et faciles pour nos étudiants. Nous allons explorer comment configurer et exécuter ces tâches automatisées directement sur votre propre ordinateur pendant que nous construisons notre application Laravel.

Tout d’abord, qu’est-ce qu’une tâche cron exactement ? Considérez-le comme un assistant personnel pour votre site Web : un assistant qui ne dort jamais et qui arrive toujours à l'heure. Il s'agit d'une tâche que vous planifiez pour qu'elle s'exécute automatiquement à des heures précises. Dans Laravel, nous les utilisons pour gérer les tâches répétitives qui assurent le bon fonctionnement de notre application.

Maintenant, vous vous demandez peut-être : "Comment puis-je exécuter ces tâches cron sur mon propre ordinateur ?" Nous allons suivre cela étape par étape et, à la fin, vous planifierez des tâches comme un pro.

Commençons par le cœur du système de planification de Laravel - le fichier app/Console/Kernel.php. C'est là que la magie opère. Lorsque vous ouvrez ce fichier, vous verrez une méthode appelée planning. C'est votre terrain de jeu pour configurer des tâches. Voici à quoi cela pourrait ressembler :

protected function schedule(Schedule $schedule)
{
    $schedule->command('emails:send')->daily();
}

Dans cet exemple, nous dirions à Laravel : "Hé, je veux que tu envoies des e-mails tous les jours." C'est aussi simple que ça ! Laravel vous offre des tonnes d'options pour savoir quand exécuter vos tâches. Vous pouvez les exécuter toutes les heures, une fois par semaine ou même toutes les cinq minutes si vous le souhaitez.

Maintenant, c'est ici que les choses se compliquent un peu. Sur un vrai serveur Web, il existe un système qui exécute automatiquement ces tâches planifiées. Mais sur votre propre ordinateur, nous devons faire preuve d'un peu de créativité.

Laravel nous donne une commande pratique pour exécuter manuellement nos tâches planifiées. Vous pouvez taper ceci dans votre terminal :

php artisan schedule:run

Cette commande revient à dire : "Exécutez toutes les tâches à accomplir maintenant." Mais soyons honnêtes, vous ne voulez pas rester là à taper cette commande encore et encore, n'est-ce pas ?

Alors, voici une astuce intéressante. Nous pouvons créer un script simple qui exécute cette commande pour nous toutes les minutes. C'est comme avoir un petit robot assistant sur votre ordinateur. Voici à quoi pourrait ressembler ce script :

#!/bin/bash

while true
do
    php /path/to/your/project/artisan schedule:run >> /dev/null 2>&1
    sleep 60
done

Ne laissez pas cela vous effrayer ! Il s'agit simplement de dire à votre ordinateur d'exécuter la commande planning:run toutes les 60 secondes. Vous l'enregistrerez sous forme de fichier .sh et l'exécuterez en arrière-plan pendant que vous travaillez sur votre projet.

Lorsque vous testez vos tâches planifiées, c'est une bonne idée d'ajouter un peu de journalisation. De cette façon, vous pouvez voir ce qui se passe dans les coulisses. C'est comme se laisser une trace de fil d'Ariane.

N'oubliez pas que cette configuration est idéale lorsque vous avez créé et testé votre application sur votre propre ordinateur. Lorsque vous serez prêt à lancer votre site Web pour de vrai, vous devrez configurer les choses un peu différemment sur votre serveur Web.

Le créateur de Laravel, Taylor Otwell, a déclaré un jour : "La planification des tâches est un aspect crucial du développement Web moderne, permettant aux développeurs d'automatiser les tâches répétitives et d'améliorer l'efficacité globale de leurs applications." Il a tout à fait raison ! En maîtrisant les tâches planifiées, vous faites un grand pas vers la création d'applications Web plus puissantes et plus efficaces.

Alors voilà ! Vous êtes désormais équipé pour configurer et exécuter des tâches cron sur votre propre ordinateur lors de la création de votre application Laravel. Cela peut paraître un peu complexe au début, mais avec la pratique, vous constaterez que cela devient une seconde nature. Continuez à expérimenter et avant de vous en rendre compte, vous planifierez des tâches comme un pro chevronné !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn