Laravel框架实现利用监听器进行sql语句记录功能_php实例_脚本之家


本站和网页 https://www.jb51.net/article/141561.htm 的作者无关,不对其内容负责。快照谨为网络故障时之索引,不代表被搜索网站的即时页面。

Laravel框架实现利用监听器进行sql语句记录功能_php实例_脚本之家
脚本之家
服务器常用软件
手机版
投稿中心
关注微信
快捷导航
软件下载
android
MAC
驱动下载
字体下载
DLL
源码下载
PHP
ASP.NET
ASP
JSP
软件编程
C#
JAVA
C 语言
Delphi
Android
网络编程
PHP
ASP.NET
ASP
JavaScript
在线工具
CSS格式化
JS格式化
Html转化为Js
数据库
MYSQL
MSSQL
oracle
DB2
MARIADB
CMS
PHPCMS
DEDECMS
帝国CMS
WordPress
常用工具
PHP开发工具
python
Photoshop
必备软件
网站首页
网页制作
网络编程
脚本专栏
脚本下载
数据库
服务器
电子书籍
操作系统
网站运营
平面设计
其它
媒体动画
电脑基础
硬件教程
网络安全
php基础
php技巧
php实例
php文摘
php模板
您的位置:首页 → 网络编程 → PHP编程 → php实例 → Laravel利用监听器进行sql语句记录
Laravel框架实现利用监听器进行sql语句记录功能
更新时间:2018年06月06日 11:20:36 作者:偶-木
这篇文章主要介绍了Laravel框架实现利用监听器进行sql语句记录功能,结合实例形式分析了Laravel框架监听器的创建、引入以及使用监听器记录sql语句的相关操作技巧,需要的朋友可以参考下
本文实例讲述了Laravel框架实现利用监听器进行sql语句记录功能。分享给大家供大家参考,具体如下:
利用监听器进行sql语句记录
1、监听sql语句的事件类已经定义,直接创建监听器类即可:
# 监听sql
make:listener QueryListener --event=Illuminate\Database\Events\QueryExecuted
2、监听器类代码
./app/Listeners/QueryListener.php
<&#63;php
namespace App\Listeners;
use Illuminate\Database\Events\QueryExecuted;
use Illuminate\Queue\InteractsWithQueue;
use Illuminate\Contracts\Queue\ShouldQueue;
use App\Http\Models\OperationLog;
class QueryListener
/**
* Create the event listener.
* @return void
*/
public function __construct()
//
/**
* Handle the event.
* @param QueryExecuted $event
* @return void
*/
public function handle(QueryExecuted $event)
$sql = str_replace("&#63;", "'%s'", $event->sql);
$log = vsprintf($sql, $event->bindings);
# 此处$uid定义是依赖于中间件记录操作日志代码
$uid = isset($_SERVER['admin_uid']) &#63; $_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 = [
...
\Illuminate\Database\Events\QueryExecuted::class => [
'App\Listeners\QueryListener'
],
...
];
此时进行操作时就会记录sql日志
相关文章:
Laravel框架实现利用中间件进行操作日志记录功能
更多关于Laravel相关内容感兴趣的读者可查看本站专题:《Laravel框架入门与进阶教程》、《php优秀开发框架总结》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家基于Laravel框架的PHP程序设计有所帮助。
您可能感兴趣的文章:Laravel SQL语句记录方式(推荐)Laravel5.* 打印出执行的sql语句的方法Laravel框架执行原生SQL语句及使用paginate分页的方法laravel实现查询最后执行的一条sql语句的方法Laravel使用原生sql语句并调用的方法laravel 获取某个查询的查询SQL语句方法Laravel 使用查询构造器配合原生sql语句查询的例子Laravel中如何轻松容易的输出完整的SQL语句
Laravel
监听器
sql语句
相关文章
PHP实现小程序批量通知推送这篇文章主要为大家详细介绍了PHP实现小程序批量通知推送,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 2018-11-11
封装ThinkPHP的一个文件上传方法实例这篇文章主要介绍了封装ThinkPHP的一个文件上传方法,以实例的形式详细讲述了文件上传类的实现以及具体功能讲解,非常实用,需要的朋友可以参考下 2014-10-10
php计算程序运行时间的简单例子分享这篇文章主要介绍了php计算程序运行时间的简单例子分享,需要的朋友可以参考下 2014-05-05
thinkPHP自定义类实现方法详解这篇文章主要介绍了thinkPHP自定义类实现方法,结合实例形式分析了thinkPHP自定义模型类的定义与使用技巧,需要的朋友可以参考下 2016-11-11
PHP数据类型之整数类型、浮点数的介绍本篇文章介绍了,PHP数据类型之整数类型、浮点数的介绍。需要的朋友参考下 2013-04-04
PHPStrom 新建FTP项目以及在线操作教程PhpStorm是一个轻量级且便捷的PHP IDE,其提供的智能代码补全,快速导航以及即时错误检查等功能大大提高了编码效率。它是一款商业的 PHP 集成开发工具,以其独特的开发便利性,短时间内赢得了大量PHPer的青睐。今天我们来详细学习下FTP相关的操作 2016-10-10
使用php批量删除数据库下所有前缀为prefix_的表这篇文章主要介绍了php如何批量删除数据库下所有前缀为prefix_的表,需要的朋友可以参考下 2014-06-06
CI框架中cookie的操作方法分析这篇文章主要介绍了CI框架中cookie的操作方法,实例分析了CI框架操作cookie的三种常见方法,以及自定义扩展核心控制器类的实例加以分析说明,非常具有实用价值的技巧,需要的朋友可以参考下 2014-12-12
thinkPHP5.0框架独立配置与动态配置方法这篇文章主要介绍了thinkPHP5.0框架独立配置与动态配置方法,结合实例形式分析了thinkPHP5.0框架独立配置与静态配置的功能、实现技巧与相关注意事项,需要的朋友可以参考下 2017-03-03
利用PHP如何写APP接口详解很多朋友在开发时遇到过这样的问题:后台什么时候提供接口?怎么才提供一个接口,其他接口什么时候给出来?没有接口我们前端怎么能做得了?那学完本篇就可以自己搞个接口来返回固定的死数据来测试了!
2016-08-08
最新评论
大家感兴趣的内容
1php获取数组长度的方法(有实例)2PHP保留两位小数的几种方法3PHP错误Allowed memory size of 674微信公众平台实现获取用户OpenID的方法5教你如何使用php session6使用PHP生成二维码的两种方法(带logo图像)7PHP删除数组中空值的方法介绍8php发送get、post请求的6种方法简明总结9PHP中把stdClass Object转array的几个方10微信公众平台网页授权获取用户基本信息中授权回调域名设置的变动
最近更新的内容
ThinkPHP CURD方法之table方法详解PHP+Mysql+Ajax+JS实现省市区三级联动php导出csv文件,可导出前导0实例代码php基于redis的分布式锁实例详解php模板引擎技术简单实现ThinkPHP5框架缓存查询操作分析Yii2框架dropDownList下拉菜单用法实例分析浅谈PHP值mysql操作类ThinkPHP框架中使用Memcached缓存数据的方法CodeIgniter整合Smarty的方法详解
常用在线小工具
微信
投稿
脚本任务
在线工具
关注微信公众号
关于我们 -
广告合作 -
联系我们 -
免责声明 -
网站地图 -
投诉建议 -
在线投稿
CopyRight 2006-2021 JB51.Net Inc All Rights Reserved. 脚本之家 版权所有