• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    Laravel框架实现利用中间件进行操作日志记录功能

    本文实例讲述了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相关内容感兴趣的读者可查看本站专题:《Laravel框架入门与进阶教程》、《php优秀开发框架总结》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

    希望本文所述对大家基于Laravel框架的PHP程序设计有所帮助。

    您可能感兴趣的文章:
    • Laravel5.1框架路由分组用法实例分析
    • laravel框架分组控制器和分组路由实现方法示例
    • laravel中命名路由的使用方法
    • Laravel 5框架学习之路由、控制器和视图简介
    • Laravel中间件实现原理详解
    • Laravel获取当前请求的控制器和方法以及中间件的例子
    • Laravel 6 将新增为指定队列任务设置中间件的功能
    • 浅谈Laravel中的三种中间件的作用
    • Laravel 4 初级教程之视图、命名空间、路由
    • 解决Laravel自定义类引入和命名空间的问题
    • 修改Laravel自带的认证系统的User类的命名空间的步骤
    • laravel框架路由分组,中间件,命名空间,子域名,路由前缀实例分析
    上一篇:PHP实现的curl批量请求操作示例
    下一篇:Laravel框架实现利用监听器进行sql语句记录功能
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    Laravel框架实现利用中间件进行操作日志记录功能 Laravel,框架,实现,利用,中间件,