Laravel监听数据库访问,打印SQL的例子


Posted in PHP onOctober 24, 2019

增加一个helper函数

if ( ! function_exists('sql_dump')) {
  function sql_dump()
  {  
    \DB::listen(function ($sql) {
      $i = 0;
      $bindings = $sql->bindings;
      $rawSql = preg_replace_callback('/\?/', function ($matches) use ($bindings, &$i) {
        $item = isset($bindings[$i]) ? $bindings[$i] : $matches[0];
        $i++;
        return gettype($item) == 'string' ? "'$item'" : $item;
      }, $sql->sql);
      echo $rawSql, "\n<br /><br />\n";
    }); 
  }  
}

在需要开始监听数据库访问的位置添加代码

DB::connection()->enableQueryLog(); // 打开query log
sql_dump();

sql语句会被打印到标准输出。

以上这篇Laravel监听数据库访问,打印SQL的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
发布一个用PHP fsockopen写的HTTP下载的类
Feb 22 PHP
探讨:parse url解析URL,返回其组成部分
Jun 14 PHP
php 修改、增加xml结点属性的实现代码
Oct 22 PHP
PHP中exec函数和shell_exec函数的区别
Aug 20 PHP
PHP获取文件夹大小函数用法实例
Jul 01 PHP
PHP编程开发怎么提高编程效率 提高PHP编程技术
Nov 09 PHP
thinkPHP使用post方式查询时分页失效的解决方法
Dec 09 PHP
php实现文件管理与基础功能操作
Mar 21 PHP
ThinkPHP框架实现数据增删改
May 07 PHP
Ajax+PHP实现的删除数据功能示例
Feb 12 PHP
php 使用 __call实现重载功能示例
Nov 18 PHP
关于Yii2框架跑脚本时内存泄漏问题的分析与解决
Dec 01 PHP
在laravel中实现ORM模型使用第二个数据库设置
Oct 24 #PHP
浅谈laravel aliases别名的原理
Oct 24 #PHP
Laravel 模型使用软删除-左连接查询-表起别名示例
Oct 24 #PHP
laravel model 两表联查示例
Oct 24 #PHP
Laravel框架之解决前端显示图片问题
Oct 24 #PHP
laravel中的fillable和guarded属性详解
Oct 23 #PHP
laravel5.6中的外键约束示例
Oct 23 #PHP
You might like
后宫无数却洁身自好的男主,唐三只爱小舞
2020/03/02 国漫
PHP sprintf() 函数的应用(定义和用法)
2012/06/29 PHP
php验证手机号码(支持归属地查询及编码为UTF8)
2013/02/01 PHP
PHP开发实现微信退款功能示例
2017/11/25 PHP
Laravel相关的一些故障解决
2020/08/19 PHP
File文件控件,选中文件(图片,flash,视频)即立即预览显示
2009/04/09 Javascript
JS getMonth()日期函数的值域是0-11
2010/02/15 Javascript
Html中JS脚本执行顺序简单举例说明
2010/06/19 Javascript
原生javascript模仿win8等待提示圆圈进度条
2014/04/24 Javascript
JavaScript中setUTCFullYear()方法的使用简介
2015/06/12 Javascript
Javascript基于对象三大特性(封装性、继承性、多态性)
2016/01/04 Javascript
Javascript 闭包详解及实例代码
2016/11/30 Javascript
nodejs学习笔记之路由
2017/03/27 NodeJs
javascript过滤数组重复元素的实现方法
2017/05/03 Javascript
详解A标签中href=&quot;&quot;的几种用法
2017/08/20 Javascript
nodejs简单读写excel内容的方法示例
2018/03/16 NodeJs
jQuery替换节点元素的操作方法
2018/03/18 jQuery
JS动画定时器知识总结
2018/03/23 Javascript
vue项目持久化存储数据的实现代码
2018/10/01 Javascript
vue实现循环切换动画
2018/10/17 Javascript
vue无限轮播插件代码实例
2019/05/10 Javascript
javascript设计模式 ? 模板方法模式原理与用法实例分析
2020/04/23 Javascript
vue中组件通信详解(父子组件, 爷孙组件, 兄弟组件)
2020/07/27 Javascript
vue 使用post/get 下载导出文件操作
2020/08/07 Javascript
Python中数字以及算数运算符的相关使用
2015/10/12 Python
Python File readlines() 使用方法
2018/03/19 Python
python使用xlrd模块读取xlsx文件中的ip方法
2019/01/11 Python
jupyter notebook 多行输出实例
2020/04/09 Python
CSS3网格的三个新特性详解
2014/04/04 HTML / CSS
盖尔斯工厂店:GUESS Factory
2020/01/21 全球购物
英国著名的美容护肤和护发产品购物网站:Lookfantastic
2020/11/23 全球购物
Prototype如何为一个Ajax添加一个参数
2015/12/06 面试题
开办加工厂创业计划书
2014/01/03 职场文书
市场部管理制度
2014/02/02 职场文书
微笑服务演讲稿
2014/05/13 职场文书
高中社区服务活动报告
2015/02/05 职场文书