Lumen ist ein PHP-basiertes Mikroframework, das von Laravel-Framework-Entwicklern entwickelt wurde. Es wurde ursprünglich entwickelt, um schnell kleine API-Anwendungen und Microservices zu erstellen und dabei einige Komponenten und Funktionen des Laravel-Frameworks beizubehalten. Das Lumen-Framework ist leicht, schnell und benutzerfreundlich und hat daher große Aufmerksamkeit und Verwendung gefunden. In diesem Artikel beginnen wir schnell mit dem Lumen-Framework und erfahren, wie Sie das Lumen-Framework zum Erstellen einfacher API-Anwendungen verwenden.
Bevor wir das Lumen-Framework erlernen, müssen wir zunächst das Framework vorbereiten. Das Lumen-Framework kann mit Composer installiert werden, daher muss Composer vor der Installation von Lumen installiert werden. Zuerst müssen wir zum Herunterladen und Installieren auf die offizielle Composer-Website gehen: https://getcomposer.org/download/. Nachdem die Installation abgeschlossen ist, können wir in der Befehlszeile überprüfen, ob Composer erfolgreich installiert wurde:
$ Composer -v
Die Download-Adresse von Lumen finden Sie auf der offiziellen Lumen-Website oder Sie können sie direkt mit Composer herunterladen. Geben Sie zum Herunterladen und Installieren den folgenden Befehl in der Befehlszeile ein:
$ Composer Create-Project --Prefer-Dist Laravel/Lumen App
Hier verwenden wir den Composer-Befehl, um das Lumen-Framework herunterzuladen und in der genannten Datei zu installieren „app“ im Verzeichnis.
Die Routing-Verwaltung des Lumen-Frameworks ist sehr einfach und übersichtlich. Wir müssen lediglich die entsprechenden Routing-Regeln in der Datei „routes/web.php“ definieren. Das Folgende ist ein einfaches Beispiel für eine Routing-Einstellung:
<?php $router->get('/', function () use ($router) { return $router->app->version(); }); $router->get('/users', 'UserController@index'); $router->get('/users/{id}', 'UserController@show');
Hier definieren wir drei Routing-Regeln. Die erste Route ist die Standardroute, die standardmäßig zum Abrufen der Benutzerliste verwendet wird, und die entsprechende Controller-Methode ist „Index“ in UserController wird verwendet, um detaillierte Informationen über einen bestimmten Benutzer zu erhalten. Die entsprechende Controller-Methode ist „show“ in UserController.
Die Controller-Verwaltung des Lumen-Frameworks ähnelt dem Laravel-Framework. Wir können den entsprechenden Controller im Verzeichnis app/Http/Controllers definieren. Das Folgende ist ein Beispiel für einen UserController:
<?php namespace AppHttpControllers; use IlluminateHttpRequest; use AppUser; class UserController extends Controller { public function index() { $users = User::all(); return response()->json($users); } public function show($id) { $user = User::find($id); return response()->json($user); } }
Hier definieren wir zwei Controller-Methoden, die der Benutzerliste entsprechen und Benutzerdetails abrufen. Gleichzeitig verwenden wir die Antwortmethode im Lumen-Framework, um Daten im JSON-Format zurückzugeben.
Das Lumen-Framework kann Datenbankoperationen über das im Laravel-Framework integrierte Eloquent ORM ausführen. Wir können die entsprechende Datenbank in der Datei config/database.php konfigurieren und dann Datenbankabfragen und -operationen über das Modell durchführen. Hier ist ein einfaches Beispiel:
<?php namespace App; use IlluminateDatabaseEloquentModel; class User extends Model { protected $fillable = ['name', 'email', 'password']; }
Dies ist ein einfaches Benutzermodell, das das ausfüllbare Attribut definiert, um die Feldnamen anzugeben, die geändert werden können. Wir können dieses Modell in UserController für Abfrage- und Änderungsvorgänge verwenden:
<?php namespace AppHttpControllers; use IlluminateHttpRequest; use AppUser; class UserController extends Controller { public function index() { $users = User::all(); return response()->json($users); } public function show($id) { $user = User::find($id); return response()->json($user); } public function store(Request $request) { $this->validate($request, [ 'name' => 'required', 'email' => 'required|unique:users', 'password' => 'required' ]); $user = User::create([ 'name' => $request->input('name'), 'email' => $request->input('email'), 'password' => password_hash($request->input('password'), PASSWORD_DEFAULT) ]); return response()->json($user, 201); } }
Hier haben wir eine Speichermethode hinzugefügt, um POST-Anfragen zu empfangen und Benutzerdaten in der Datenbank zu speichern.
Abschließend können wir über die Befehlszeile den integrierten PHP-Entwicklungsserver zum Testen starten. Führen Sie den folgenden Befehl im Framework-Stammverzeichnis aus:
$ php -S localhost:8000 -t public
Besuchen Sie dann http://localhost:8000/users im Browser, um die Benutzerlisteninformationen erfolgreich abzurufen. Ebenso werden durch den Zugriff auf http://localhost:8000/users/1 auch die spezifischen Benutzerinformationen mit ID 1 erfolgreich abgerufen.
Zusammenfassung
Das Obige ist der Entwicklungsprozess einer vollständigen API-Anwendung des Lumen-Frameworks. Das Lumen-Framework bietet eine leichte und praktische API-Entwicklungsmethode und behält gleichzeitig einige der hervorragenden Funktionen des Laravel-Frameworks bei, die uns dabei helfen können, schnell kleine API-Anwendungen und Microservices zu erstellen. Wenn Sie sich für das Lumen-Framework interessieren, können Sie versuchen, es in realen Projekten zu verwenden.
Das obige ist der detaillierte Inhalt vonPHP-Implementierungsframework: Einführungs-Tutorial zum Lumen-Framework. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!