Heim >Backend-Entwicklung >PHP-Tutorial >Das Laravel-Framework implementiert die Vorgangsprotokollierungsfunktion mithilfe von Middleware
In diesem Artikel wird hauptsächlich das Laravel-Framework zur Implementierung der Operationsprotokollierungsfunktion mithilfe von Middleware vorgestellt. Er analysiert die Erstellung und Einführung der Laravel-Framework-Middleware und die damit verbundenen Implementierungstechniken zur Verwendung der Middleware für die Operationsprotokollierungsfunktion in Form von Beispielen. Was benötigt wird, Freunde können darauf verweisen
Dieser Artikel beschreibt das Beispiel des Laravel-Frameworks, das die Betriebsprotokollierungsfunktion mithilfe von Middleware implementiert. Teilen Sie es allen als Referenz mit. Die Details lauten wie folgt:
Verwenden Sie Middleware für den Vorgangsprotokollierungsprozess:
1. Erstellen Sie Middleware
php artisan make:middleware AdminOperationLog
2. Die Datei ./app/Http/Middleware/AdminOperationLog.php
wird generiert lautet wie folgt:
<?php namespace App\Http\Middleware; use Closure; use Illuminate\Http\Request; use Illuminate\Support\Facades\Auth; use App\Http\Models\OperationLog; class AdminOperationLog { /** * Handle an incoming request. * * @param \Illuminate\Http\Request $request * @param \Closure $next * @return mixed */ public function handle($request, Closure $next) { $user_id = 0; if(Auth::check()) { $user_id = (int) Auth::id(); } $_SERVER['admin_uid'] = $user_id; if('GET' != $request->method()){ $input = $request->all(); $log = new OperationLog(); # 提前创建表、model $log->uid = $user_id; $log->path = $request->path(); $log->method = $request->method(); $log->ip = $request->ip(); $log->sql = ''; $log->input = json_encode($input, JSON_UNESCAPED_UNICODE); $log->save(); # 记录日志 } return $next($request); } }
3. Einführung der Middleware ./app/Http/Kernel.php
protected $middlewareGroups = [ 'web' => [ ... \App\Http\Middleware\AdminOperationLog::class, ... ], 'api' => [ 'throttle:60,1', 'bindings', ], ];
Das Vorgangsprotokoll wird aufgezeichnet, wenn der Vorgang zu diesem Zeitpunkt ausgeführt wird
Verwandte Empfehlungen:
Laravel-Framework-Implementierung Der Listener führt die SQL-Anweisungsaufzeichnungsfunktion aus
Das obige ist der detaillierte Inhalt vonDas Laravel-Framework implementiert die Vorgangsprotokollierungsfunktion mithilfe von Middleware. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!