<?php namespace app\admin\middleware; use app\utility\BusinessLog; class AdminLog { /** * 处理请求 * * @param \think\Request $param * @param \Closure $next * @return Response */ public function handle($request, \Closure $next) { //得到要log的数据 $adminId = $request->user_id; $pathInfo = $request->pathinfo(); $host = $request->server("HTTP_HOST"); $uri = $request->server("REQUEST_URI"); $ua = $request->server("HTTP_USER_AGENT"); $ip = $request->ip(); //request参数 url上参数 $requestData = $request->request(); //body请求参数 $param = $request->param(); //放入数组 $content = [ "admin_id" => $adminId, "host" => $host, "uri" => $uri, "ua" => $ua, "ip" => $ip, "request_param" => json_encode($requestData), "body_param" => json_encode($param), "path_info" => '/' . $pathInfo, "create_date" => date("Y-m-d"), "create_time" => date("Y-m-d H:i:s") ]; //log $log = new BusinessLog(); $log->log($content); //返回 return $next($request); } }