怎么在Laravel框架中使用监听器实现sql语句记录功能

  介绍

今天就跟大家聊聊有关怎么在Laravel框架中使用监听器实现sql语句记录功能,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

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

#,监听sql   :listener  QueryListener ——事件=照亮\ \数据库\事件QueryExecuted

<强> 2,监听器类代码

。/app/听众/QueryListener。php

& lt; php ?   namespace 应用\听众;   use 照亮\数据库\ \ QueryExecuted事件;   use 照亮\ \ InteractsWithQueue队列;   use 照亮\ \队列\ ShouldQueue合同;   use 应用\ Http \ \ OperationLog模型;   class  QueryListener   {   ,/* *   ,,*,Create 从而event 听众。   ,,*   ,,*,@return 空白   ,,*/public 才能;function  __construct ()   {才能   ,,//,,}   ,/* *   ,,*,Handle 从而事件。   ,,*   ,,*,@param  QueryExecuted  $事件   ,,*,@return 空白   ,,*/public 才能;function 处理(QueryExecuted 事件美元)   {才能   ,,,sql 美元;=,str_replace(“?“,“& # 39; % & # 39;“,,美元事件→sql);   ,,,log 美元;=,函数(sql,美元,美元事件→绑定);   ,,,#,此处uid美元定义是依赖于中间件记录操作日志代码   ,,,uid 美元;=,收取($ _SERVER [& # 39; admin_uid& # 39;]), ?, $ _SERVER [& # 39; admin_uid& # 39;],:, 0;   ,,,如果(& # 39;选择# 39;,!=,substr (log 美元;,,0,,,6)){   ,,,,,如果(& # 39;insert  into ‘operationLog & # 39;, !=, substr (log 美元;,,0,,,26)){   ,,,,,,,OperationLog 美元;=,new  OperationLog ();   ,,,,,,,美元OperationLog→uid =, uid美元;   ,,,,,,,美元OperationLog→sql =,美元日志;   ,,,,,,,美元OperationLog→input =, & # 39; & # 39;;   ,,,,,,,美元OperationLog→保存();   ,,,,,}   ,,,}   ,,}   }

<强> 3,引入监听器

。/app/供应商/EventServiceProvider。php

protected  listen 美元;=,(   ,,,…   ,,,数据库\照亮\ \ \ QueryExecuted事件:class =祝辞,(   ,,,,,& # 39;应用\听众\ QueryListener& # 39;   ,,,,   ,,,…   ];才能 Laravel是什么

Laravel是一套简洁,优雅的PHP Web开发框架。它可以让你从面条一样杂乱的代码中解脱出来,它可以帮你构建一个完美的网络应用,而且每行代码都可以简洁,富于表达力。

看完上述内容,你们对怎么在Laravel框架中使用监听器实现sql语句记录功能有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。

怎么在Laravel框架中使用监听器实现sql语句记录功能