이 글에서는 미들웨어를 이용하여 작업 로깅 기능을 구현하기 위한 라라벨 프레임워크를 주로 소개하고, 라라벨 프레임워크 미들웨어의 생성 및 도입과 미들웨어를 이용한 작업 로깅 기능 관련 구현 기술을 예시 형태로 분석합니다. 참고로
이 글은 미들웨어를 이용하여 작업 로깅 기능을 구현한 Laravel 프레임워크의 예를 설명합니다. 참고용으로 모든 사람과 공유하세요. 세부 사항은 다음과 같습니다.
작업 로깅 프로세스에 미들웨어 사용:
1. 미들웨어 생성
php artisan make:middleware AdminOperationLog
2. 파일 생성 ./app/Http /Middleware/AdminOperationLog.php
코드는 다음과 같습니다.
<?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. 미들웨어 소개 ./app/Http/Kernel.php
protected $middlewareGroups = [ 'web' => [ ... \App\Http\Middleware\AdminOperationLog::class, ... ], 'api' => [ 'throttle:60,1', 'bindings', ], ];
시간 작업 로그가 기록됩니다
관련 권장 사항:
Laravel 프레임워크는 리스너를 사용하여 SQL 문을 기록하는 기능을 구현합니다
위 내용은 Laravel 프레임워크는 미들웨어를 사용하여 작업 로깅 기능을 구현합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!