Artisan ist das Befehlszeilentool, mit dem Laravel auf seine Anwendungen zugreift. Es bietet eine Reihe von Befehlen, die Ihren Entwicklungsprozess erheblich vereinfachen können.
Wenn Sie sich also fragen, was es kann und wie Sie damit beginnen können, ist dies der Leitfaden für Sie. Hier finden Sie alles, was Sie über die Verwendung der Artisan-Konsole in Laravel wissen müssen.
Einstieg
Geben Sie in Ihrem Terminal den folgenden Befehl in das Verzeichnis Ihrer Laravel-Anwendung ein.
$ php Handwerkerliste
Es wird die Liste der verfügbaren Befehle angezeigt.
Wenn Sie Befehle verwenden, können Sie ihnen das vorangestellt haben Hilfe Option, um die verfügbaren Argumente und Optionen anzuzeigen. Das Terminal zeigt auf der rechten Seite eine kurze Beschreibung dessen an, was sie tun.
$ php handwerker - hilf zu dienen
Trinkgeld: Wie bei den meisten Befehlszeilenaktionen lautet die Syntax: Befehl [Optionen] [Argumente]
Basteln
Tinker ist die REPL (oder interaktive Shell), die Laravel verwendet. Eine "Read-Eval-Print-Schleife" (REPL) ist eine Programmierumgebung, die einzelne Benutzereingaben aufnimmt, verarbeitet und ein Ergebnis an den Benutzer zurückgibt.
Sie können Tinker mit der Verwendung des Python-Interpreters vergleichen, aber Tinker wurde speziell für Laravel entwickelt.
Diese spezielle Umgebung bietet viele Vorteile, z. B. das einfache Ausführen einfacher Tests auf dem System, ohne ständig Dateien zu schreiben.
Hinweis: Wenn Sie Laravel Sail verwenden, fügen Sie das hinzu Segel Befehl und Ihre Anweisungen werden in den Docker-Containern Ihrer Anwendung ausgeführt.
$ ./sail Handwerkerliste
So installieren Sie Tinker
Standardmäßig wird Ihre Laravel-App mit Tinker geliefert. Wenn Sie es zuvor deinstalliert haben, können Sie es erneut über hinzufügen Komponist.
$ Komponist benötigen Laravel / Basteln
Befehle eingeben
Mit Tinker können Sie mit Ihrer gesamten Anwendung interagieren. Geben Sie Folgendes ein, um Tinker zu verwenden:
$ php Handwerker basteln
Sie werden dann mit der Bastelschale begrüßt.
Verbunden: So bearbeiten Sie Text in PHP mit diesen 9 Funktionen
Tinker verfügt über eine Befehlszulassungsliste, die bestimmt, welche Befehle in seiner Shell ausgeführt werden können. Um diese Liste zu erweitern, können Sie zu gehen /vendor/laravel/tinker/config Verzeichnis, das enthält tinker.php.
Sie können diese Datei in Ihrem bevorzugten Texteditor bearbeiten, um Ihren Befehl hinzuzufügen.
'Befehle' => [
// App \ Console \ Commands \ ExampleCommand:: class,
],
Eigene Befehle definieren
Abgesehen von den Standard-Handwerkerbefehlen können Sie Ihre eigenen Befehle erstellen. Bei der Erstellung werden die Befehle automatisch in der gespeichert App / Konsole / Befehle Verzeichnis.
In Ihrem neuen Laravel-Projekt wird das nicht angezeigt /Command Verzeichnis. Das ist normal. Der Ordner wird automatisch erstellt, wenn Sie einen neuen Befehl definieren. Im Folgenden erfahren Sie, wie Sie Befehle generieren.
Befehle erstellen
Definieren Sie die Signatur Ihres Befehls und eine Beschreibung der Klasse. In der Klassendatei des Befehls definieren Sie auch dessen Argumente. Nehmen Sie dieses Beispiel:
$ php artisan make: Befehl GetDailySales
Die folgende Datei wird bei der Ausführung automatisch generiert. Sie können Ihre Befehlslogik in die Handle-Methode einfügen, da sie bei der Ausführung des Befehls aufgerufen wird.
PHP
Namespace App \ Console \ Commands;
Illuminate \ Console \ Command verwenden;
Klasse GetDailySales erweitert Command
{
/ **
* Der Name und Unterschrift von den Konsolenbefehl.
*
* @var string
* /
protected $ Signatur = 'Befehl: Name';
/ **
* Die Beschreibung des Konsolenbefehls.
*
* @var Zeichenfolge
* /
protected $ description = 'Befehlsbeschreibung';
/ **
* Erstellen Sie eine neue Befehlsinstanz.
*
* @return void
* /
publicfunction__construct ()
{
parent:: __construct ();
}
/ **
* Führen Sie die Konsole aus Befehl.
*
* @return int
* /
publicfunctionhandle ()
{
return0;
}
} code> pre> Schließbefehle h3>
Sie können das Schließen kontrastieren Befehle zum Definieren von Routenschließungen anstelle von Controllern. Anstatt Befehlsklassen zu erstellen (wie im Abschnitt "Erstellen von Befehlen" beschrieben), können Sie auch einfach den Befehl verwenden Schließungen. p>
Der Vorteil hierbei ist, dass Sie weniger Dateien verwalten müssen und Ihre Logik leichter zu erkennen ist durch. p>
Lesen Sie mehr: High-Level vs. Erklärte Programmiersprachen auf niedriger Ebene span> span> p> Die Datei Kernel.php strong> definiert Konsolenrouten zu Ihrer Anwendung. Sie können alle Ihre Schließkonsolenbefehle mit der Methode Artisan:: command strong> in dieser Datei definieren. Der Befehl akzeptiert zwei Argumente: die Befehlssignatur und den Abschluss, dem Sie ihn zuweisen. p> Artisan:: command ('report: get {day}', function ($ day) {
$ this-> info ("Bericht erstellen für: {$ day}! ");
}); code> pre> Typ-Hinweis-Abhängigkeiten h3>
Typ-Hinweis bezieht sich auf die statische Definition des Datentyps, den eine Funktion zurückgeben soll, oder eines Arguments sollte übernehmen. Befehlsschließungen können auch auf die Abhängigkeiten hinweisen, die Sie vom Servicecontainer abrufen müssen. P>
Beschreiben von Befehlsschließungen h3>
Verwenden Sie die Option, um einer Befehlsschließung eine Beschreibung hinzuzufügen zweck () strong> Methode. p>
Artisan:: command ('text: send {user}', function ($ user) {
//...
}) - > Zweck ('SMS-Text senden an einen Benutzer ');
code> pre> Sie können eine vollständige Liste der Befehle und Funktionen auf Laravels anzeigen docs span>. p> Weitere Informationen Laravel h2>
Laravel verfügt über eine starke Entwicklergemeinschaft und eine gut geschriebene Dokumentation von seiner offiziellen Website. Dies bedeutet, dass Ihnen nie die Orte ausgehen, an denen Sie Hilfe finden, wenn Sie nicht weiterkommen. p>
Üben Sie weiter mit der Handwerkerkonsole, und Sie werden feststellen, wie leistungsfähig und zeitsparend die Befehle sein können. Laravel ist jedoch nicht nur die Artisan-Konsole. p>
Laravel 8 bietet eine Vielzahl neuer Funktionen für Ihr Webentwicklungsspiel. p>