Laravel5.* 打印出执行的sql语句的方法
发布时间 - 2026-01-11 02:29:39 点击率:次本文介绍了Laravel5.* 打印出执行的sql语句的方法,分享给大家,具体如下:

打开app\Providers\AppServiceProvider.PHP,在boot方法中添加如下内容
5.2以下版本
// 先引入DB
use DB;
// 或者直接使用 \DB::
DB::listen(function($sql, $bindings, $time) {
dump($sql);
});
5.2及以上版本
use DB;
// 或者直接使用 \DB::
// 只能接受一个参数
QueryExecuted {#84 ▼
+sql: "select * from `posts` where `slug` = ? limit 1"
+bindings: array:1 [▶]
+time: 0.59
+connection: MySqlConnection {#85 ▶}
+connectionName: "mysql"
}
DB::listen(function($sql) {
dump($sql);
// echo $sql->sql;
// dump($sql->bindings);
});
// 如果要放入日志文件中
DB::listen(
function ($sql) {
// $sql is an object with the properties:
// sql: The query
// bindings: the sql query variables
// time: The execution time for the query
// connectionName: The name of the connection
// To save the executed queries to file:
// Process the sql and the bindings:
foreach ($sql->bindings as $i => $binding) {
if ($binding instanceof \DateTime) {
$sql->bindings[$i] = $binding->format('\'Y-m-d H:i:s\'');
} else {
if (is_string($binding)) {
$sql->bindings[$i] = "'$binding'";
}
}
}
// Insert bindings into query
$query = str_replace(array('%', '?'), array('%%', '%s'), $sql->sql);
$query = vsprintf($query, $sql->bindings);
// Save the query to file
$logFile = fopen(
storage_path('logs' . DIRECTORY_SEPARATOR . date('Y-m-d') . '_query.log'),
'a+'
);
fwrite($logFile, date('Y-m-d H:i:s') . ': ' . $query . PHP_EOL);
fclose($logFile);
}
);
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# laravel打印sql语句
# laravel5
# 打印sql语句
# laravel中打印sql语句
# Laravel SQL语句记录方式(推荐)
# Laravel框架执行原生SQL语句及使用paginate分页的方法
# laravel实现查询最后执行的一条sql语句的方法
# Laravel使用原生sql语句并调用的方法
# laravel 获取某个查询的查询SQL语句方法
# Laravel框架实现利用监听器进行sql语句记录功能
# Laravel 使用查询构造器配合原生sql语句查询的例子
# Laravel中如何轻松容易的输出完整的SQL语句
# 给大家
# 大家多多
# posts
# select
# slug
# dump
# time
# QueryExecuted
# MySqlConnection
# connection
# connectionName
# array
# limit
# bindings
# AppServiceProvider
# Providers
# boot
# PHP
# sql
# app
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
Laravel的HTTP客户端怎么用_Laravel HTTP Client发起API请求教程
js实现获取鼠标当前的位置
手机软键盘弹出时影响布局的解决方法
微信小程序制作网站有哪些,微信小程序需要做网站吗?
成都网站制作公司哪家好,四川省职工服务网是做什么用?
如何在 Go 中优雅地映射具有动态字段的 JSON 对象到结构体
Laravel如何连接多个数据库_Laravel多数据库连接配置与切换教程
Laravel如何实现API资源集合?(Resource Collection教程)
ChatGPT怎么生成Excel公式_ChatGPT公式生成方法【指南】
如何用IIS7快速搭建并优化网站站点?
🚀拖拽式CMS建站能否实现高效与个性化并存?
如何在阿里云服务器自主搭建网站?
如何制作公司的网站链接,公司想做一个网站,一般需要花多少钱?
详解CentOS6.5 安装 MySQL5.1.71的方法
php8.4header发送头信息失败怎么办_php8.4header函数问题解决【解答】
jQuery中的100个技巧汇总
北京的网站制作公司有哪些,哪个视频网站最好?
WordPress 子目录安装中正确处理脚本路径的完整指南
手机怎么制作网站教程步骤,手机怎么做自己的网页链接?
制作ppt免费网站有哪些,有哪些比较好的ppt模板下载网站?
html5audio标签播放结束怎么触发事件_onended回调方法【教程】
Laravel Seeder填充数据教程_Laravel模型工厂Factory使用
Laravel如何与Docker(Sail)协同开发?(环境搭建教程)
Laravel Seeder怎么填充数据_Laravel数据库填充器的使用方法与技巧
北京专业网站制作设计师招聘,北京白云观官方网站?
Android仿QQ列表左滑删除操作
悟空识字如何进行跟读录音_悟空识字开启麦克风权限与录音
Windows家庭版如何开启组策略(gpedit.msc)?(安装方法)
Laravel事件监听器怎么写_Laravel Event和Listener使用教程
如何将凡科建站内容保存为本地文件?
Laravel如何使用Guzzle调用外部接口_Laravel发起HTTP请求与JSON数据解析【详解】
网站图片在线制作软件,怎么在图片上做链接?
Laravel怎么使用artisan命令缓存配置和视图
佛山企业网站制作公司有哪些,沟通100网上服务官网?
Laravel如何获取当前用户信息_Laravel Auth门面获取用户ID
Javascript中的事件循环是如何工作的_如何利用Javascript事件循环优化异步代码?
HTML5空格在Angular项目里怎么处理_Angular中空格的渲染问题【详解】
laravel服务容器和依赖注入怎么理解_laravel服务容器与依赖注入解析
Win11怎么关闭资讯和兴趣_Windows11任务栏设置隐藏小组件
如何在云主机快速搭建网站站点?
高防服务器租用首荐平台,企业级优惠套餐快速部署
Win11摄像头无法使用怎么办_Win11相机隐私权限开启教程【详解】
Laravel的契約(Contracts)是什么_深入理解Laravel Contracts与依赖倒置
Java类加载基本过程详细介绍
Laravel怎么返回JSON格式数据_Laravel API资源Response响应格式化【技巧】
网易LOFTER官网链接 老福特网页版登录地址
太平洋网站制作公司,网络用语太平洋是什么意思?
个人网站制作流程图片大全,个人网站如何注销?
如何正确选择百度移动适配建站域名?
如何在云服务器上快速搭建个人网站?

