Laravel框架实现利用监听器进行sql语句记录功能

前端之家收集整理的这篇文章主要介绍了Laravel框架实现利用监听器进行sql语句记录功能前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

本文实例讲述了Laravel框架实现利用监听器进行sql语句记录功能分享给大家供大家参考,具体如下:

利用监听器进行sql语句记录

1、监听sql语句的事件类已经定义,直接创建监听器类即可:

PHP;"> # 监听sql make:listener QueryListener --event=Illuminate\Database\Events\QueryExecuted

2、监听器类代码

PHP

PHP;"> sql); $log = vsprintf($sql,$event->bindings); # 此处$uid定义是依赖于中间件记录操作日志代码 $uid = isset($_SERVER['admin_uid']) ? $_SERVER['admin_uid'] : 0; if('select' != substr($log,6)){ if('insert into `operationLog`' != substr($log,26)){ $OperationLog = new OperationLog(); $OperationLog->uid = $uid; $OperationLog->sql = $log; $OperationLog->input = ''; $OperationLog->save(); } } } }

3、引入监听器

PHP

[ 'App\Listeners\QueryListener' ],... ];

此时进行操作时就会记录sql日志

相关文章

更多关于Laravel相关内容感兴趣的读者可查看本站专题:《》、《》、《》、《》及《

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

原文链接:https://www.f2er.com/laravel/15951.html

猜你在找的Laravel相关文章