Maison  >  Article  >  cadre php  >  Comment utiliser ThinkPHP6 pour la gestion graphique de la planification des tâches ?

Comment utiliser ThinkPHP6 pour la gestion graphique de la planification des tâches ?

王林
王林original
2023-06-12 11:40:521483parcourir

Dans le processus d'utilisation de PHP pour le développement commercial, nous devons souvent effectuer certaines tâches régulièrement, comme générer régulièrement des rapports, envoyer régulièrement des e-mails, sauvegarder régulièrement des données, etc. À l’heure actuelle, la gestion de la planification des tâches est devenue un élément indispensable pour nous. Prendre en compte la question de la planification et de la gestion des tâches dès le début de la conception de la couche métier peut améliorer l'efficacité de notre développement et l'évolutivité du code. Cet article vise à présenter comment utiliser ThinkPHP6 pour la gestion graphique de la planification des tâches.

1. Bibliothèque de planification de tâches

Avant d'utiliser ThinkPHP6 pour la gestion de la planification des tâches, vous devez d'abord installer la bibliothèque correspondante. ThinkPHP6 fournit une bibliothèque appelée think-schedule (un composant léger de planification de timing), qui peut nous aider à terminer rapidement la gestion de la planification des tâches. Avant d'installer cette bibliothèque, vous devez vous assurer que Composer est installé sur votre ordinateur local. Sinon, veuillez d'abord installer Composer.

Utilisez la commande suivante pour installer think-schedule : composer require topthink/think-schedule

Après une installation réussie, vous verrez des informations de dépendance pertinentes dans le fichier composer.json du projet et générez les fichiers associés dans le répertoire du fournisseur.

2. Comment définir des tâches

Avant de commencer à utiliser ThinkPHP6 pour la gestion graphique de la planification des tâches, nous devons d'abord définir la classe de tâches à planifier. La classe de tâches doit hériter de la classe thinkscheduleTask et implémenter la méthode run, qui définit pour nous la logique spécifique d'exécution de la tâche.

Par exemple :

<?php
namespace app    ask;

use thinkscheduleTask;

class Test extends Task
{
    protected function configure()
    {
        // 该任务的配置信息
        $this->setName('test')->setDescription('测试任务');
    }

    protected function execute(    hinkConsole $console)
    {
        // 该任务的执行逻辑
        echo '测试任务执行成功';
    }
}

Dans cet exemple, nous définissons une classe de tâches nommée Test. Dans la méthode configure de la classe, nous pouvons définir les informations pertinentes de la tâche ; dans la méthode perform, il s'agit de la logique spécifique de la tâche. En d'autres termes, nous pouvons définir les informations de base de la tâche dans la méthode configure (comme le nom de la tâche, la description de la tâche, etc.), et définir la logique spécifique de la tâche dans la méthode perform (comme ce les informations sont sorties une fois la tâche exécutée avec succès, etc.).

3. Comment utiliser la méthode graphique pour la planification des tâches

Une fois la définition de la classe de tâches terminée, nous pouvons envisager d'utiliser ThinkPHP6 pour la planification graphique des tâches. ThinkPHP6 fournit une commande pour effectuer la gestion de la planification des tâches : php think planning:list. Après avoir exécuté cette commande, le système analysera automatiquement toutes les classes de tâches définies et affichera les informations de base des tâches.

Utilisez la commande php think planning:list dans le terminal Le résultat est le suivant :

+---------+-----------+--------------------+---------------+------------------------+
| Command | Signature | Description        | Interval      | Timezone               |
+---------+-----------+--------------------+---------------+------------------------+
| test    | test      | 测试任务           | * * * * *     | Asia/Shanghai          |
+---------+-----------+--------------------+---------------+------------------------+

Nous pouvons voir sur le résultat que le nom de la tâche est test et la tâche. la description est une tâche de test, l'heure de planification de la tâche est d'être exécutée une fois par minute et le fuseau horaire est Asie/Shanghai.

Lorsque nous devons ajouter une tâche, nous pouvons utiliser la commande suivante :

php think planning:add task name

Par exemple : php think planning :add Test

Lorsque nous devons supprimer une tâche, nous pouvons le faire via la commande suivante :

php think planning:remove task name

# 🎜🎜#Par exemple : php think planning:remove Test

Lorsque nous devons modifier les informations de base d'une tâche, nous pouvons modifier les informations de la tâche dans la méthode configure de la classe de tâches. Une fois la modification terminée, exécutez la commande suivante :

php think planning:clear // Effacer la tâche

php think planning:list // Réanalyser la tâche #🎜🎜 ##🎜 🎜#Après avoir exécuté les deux commandes ci-dessus, vous pouvez voir les informations de tâche modifiées.

4. Comment effectuer la planification des tâches

Après avoir défini la classe de tâches et défini les informations sur la tâche, l'étape suivante consiste à effectuer la planification des tâches.

Exécutez la commande suivante dans le terminal pour démarrer la planification des tâches : php think planning:run

    Exécutez la commande suivante dans le terminal pour afficher la liste de planification des tâches : php think planning: list
  1. Grâce aux deux commandes ci-dessus, nous pouvons activer la planification des tâches et afficher la liste de planification des tâches. Le système exécutera automatiquement la tâche en fonction de l'heure de planification des tâches. . Pendant le processus d'exécution, nous pouvons visualiser l'état d'exécution de chaque tâche via le journal. Le chemin du journal est le fichier planning.log dans le répertoire d'exécution.
5. Résumé

Cet article présente principalement comment utiliser ThinkPHP6 pour la gestion graphique de la planification des tâches. Tout d'abord, installez la bibliothèque think-schedule via composer, puis définissez les informations de base et la logique de tâche spécifique de la tâche dans la classe de tâches. Ensuite, ajoutez, supprimez et modifiez des tâches via des commandes. Après avoir utilisé la commande php think planning:run pour activer la planification des tâches, nous pouvons afficher la liste de planification des tâches via php think planning:list, et le système exécutera automatiquement la tâche en fonction de l'heure de planification de la tâche. Enfin, nous pouvons visualiser l'état d'exécution de chaque tâche via des journaux.

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