Während sich die Webanwendungen weiterentwickeln, spielen Zeitaufgaben in vielen Szenarien eine entscheidende Rolle. Das Laravel -Framework bietet einen leistungsstarken Task -Scheduler (Task Scheduler), mit dem Entwickler die Ausführung verschiedener Zeitaufgaben problemlos ausführen können, z. B. regelmäßig Berichte, Caches, Senden von E -Mails usw. In diesem Artikel wird ausführlich festgelegt, wie der Task -Scheduler zur Ausführung von Zeitaufgaben im Laravel -Framework verwendet wird.
Zunächst müssen wir die Zeitaufgaben im Laravel -Projekt definieren. Öffnen Sie app/Console/Kernel.php
Im obigen Code wird die stündliche Methode verwendet, was bedeutet, dass der namens Inspire einmal pro Stunde ausgeführt wird. Laravel bietet eine Vielzahl von Methoden, um die Ausführungshäufigkeit von Aufgaben zu definieren. Zu den allgemeinen gehören täglich , wöchentlich , monatlich usw. Natürlich können Sie auch die Cron -Methode verwenden, um eine benutzerdefinierte Aufgabenhäufigkeit entsprechend Ihren Anforderungen zu definieren. Zum Beispiel:
$schedule->command('emails:send')->cron('0 0 * * *');
Der obige Code definiert eine Aufgabe durch einen Cron -Ausdruck, der jeden Tag um 0:00 Uhr ausgeführt wird.
Neben der Ausführung von Befehlen unterstützt Laravels Task Scheduler auch die Definition von Zeitaufgaben durch Schließfunktionen. Hier ist ein Beispiel:
$schedule->call(function () {
// Benutzerdefinierte Aufgaben ausführen
})->daily();
In diesem Beispiel verwenden wir die Aufrufmethode und übergeben eine Schließfunktion, die aufgerufen wird, wenn der Task -Scheduler ausgeführt wird.
Sobald die Timing -Aufgabe definiert ist, wird die geplante Aufgabe des Betriebssystems dann konfiguriert. Dadurch wird sichergestellt, dass der Aufgabenplaner regelmäßig ausgeführt werden kann. Sie können geplante Aufgaben bearbeiten, indem Sie den folgenden Befehl ausführen:
* * * * * php /path/to/artisan schedule:run >> /dev/null 2>&1
Dieser Befehl zeigt an, dass Laravels Zeitplan: Der Befehl run einmal pro Minute aufgerufen wird, was den Aufgabenplaner ausführt, um die definierte Zeitaufgabe auszuführen.
Im Allgemeinen ist der Prozess der Verwendung eines Aufgabenplaners zur Ausführung von Zeitaufgaben im Laravel -Framework sehr einfach. Definieren Sie einfach die Zeitaufgaben in der Datei App/Console/Kernel.php und führen Sie den Task Scheduler regelmäßig über die Cron -Jobfunktion des Betriebssystems aus. Auf diese Weise können Sie verschiedene Zeitaufgaben implementieren, um die Automatisierung und Effizienz Ihrer Webanwendungen zu verbessern.