最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
Laravel框架实现利用监听器进行sql语句记录功能
时间:2022-06-24 17:40:54 编辑:袖梨 来源:一聚教程网
本文实例讲述了Laravel框架实现利用监听器进行sql语句记录功能。分享给大家供大家参考,具体如下:
利用监听器进行sql语句记录
1、监听sql语句的事件类已经定义,直接创建监听器类即可:
# 监听sql make:listener QueryListener --event=IlluminateDatabaseEventsQueryExecuted
2、监听器类代码
./app/Listeners/QueryListener.php
sql);
$log = vsprintf($sql, $event->bindings);
# 此处$uid定义是依赖于中间件记录操作日志代码
$uid = isset($_SERVER['admin_uid']) ? $_SERVER['admin_uid'] : 0;
if('select' != substr($log , 0 , 6)){
if('insert into `operationLog`' != substr($log , 0 , 26)){
$OperationLog = new OperationLog();
$OperationLog->uid = $uid;
$OperationLog->sql = $log;
$OperationLog->input = '';
$OperationLog->save();
}
}
}
}
3、引入监听器
./app/Providers/EventServiceProvider.php
protected $listen = [
...
IlluminateDatabaseEventsQueryExecuted::class => [
'AppListenersQueryListener'
],
...
];
此时进行操作时就会记录sql日志
相关文章
- gog平台怎么注册 03-25
- 哔哩哔哩网页版直达-bilibili官网登录入口 03-25
- 樱花动漫下载安装最新版本-樱花动漫高清资源下载入口在线观看 03-25
- 黄鸟抓包app如何修改轻颜相机 03-25
- 超星学习通如何用浏览器登录 03-25
- 智慧职教云平台登录-职教云官网登录入口 03-25