Laravel中如何轻松容易的输出完整的SQL语句


Posted in PHP onJuly 26, 2020

前言

laravel 中自带的查询构建方法 toSql 得到的 sql 语句并未绑定条件参数,类似于这样 select * fromuserswhereid= ? ,所以写了个扩展包 laravel-dump-sql ,可以获取完整的 sql 语句。

源码

laravel-dump-sql - github.com/guanguans/l…

安装

$ composer require guanguans/laravel-dump-sql -v

发布服务

$ php artisan vendor:publish --provider="Guanguans\\LaravelDumpSql\\ServiceProvider"

使用

安装成功后查询构建器会新增 toRawSql、dumpSql、ddSql 三个方法

// 获取 SQL
User::where('id', 1)->toRawSql();
DB::table('user')->where('id', 1)->toRawSql();

// 打印 SQL
User::where('id', 1)->dumpSql();
DB::table('user')->where('id', 1)->dumpSql();

// 打印 SQL 并退出
User::where('id', 1)->ddSql();
DB::table('user')->where('id', 1)->ddSql();

自定义方法名称

$ php artisan vendor:publish --tag=laravel-dump-sql

发布配置文件

<?php
return [
 /*
  * Get sql statement.
  */
 'to_raw_sql' => 'toRawSql',

 /*
  * Print SQL statements.
  */
 'dump_sql' => 'dumpSql',

 /*
  * Print SQL statements and exit.
  */
 'dd_sql' => 'ddSql',
];

总结

到此这篇关于Laravel中如何轻松容易的输出完整的SQL语句的文章就介绍到这了,更多相关Laravel输出完整的SQL语句内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

PHP 相关文章推荐
第十一节 重载 [11]
Oct 09 PHP
php面向对象全攻略 (二) 实例化对象 使用对象成员
Sep 30 PHP
PHP 命令行参数详解及应用
May 18 PHP
PHP字符串函数系列之nl2br(),在字符串中的每个新行 (\n) 之前插入 HTML 换行符br
Nov 10 PHP
php实现监听事件
Nov 06 PHP
yii操作cookie实例简介
Jul 09 PHP
php生成excel列名超过26列大于Z时的解决方法
Dec 29 PHP
php读取csv数据保存到数组的方法
Jan 03 PHP
注意!PHP 7中不要做的10件事
Sep 18 PHP
Yii2使用表单上传文件的实例代码
Aug 03 PHP
yii2.0框架场景的简单使用示例
Jan 25 PHP
使用php的mail()函数实现发送邮件功能
Jun 03 PHP
php+mysql+ajax 局部刷新点赞/取消点赞功能(每个账号只点赞一次)
Jul 24 #PHP
php实现商城购物车的思路和源码分析
Jul 23 #PHP
PHP安全之register_globals的on和off的区别
Jul 23 #PHP
PHP代码覆盖率统计详解
Jul 22 #PHP
php实现统计IP数及在线人数的示例代码
Jul 22 #PHP
Yii使用DbTarget实现日志功能的示例代码
Jul 21 #PHP
浅谈PHP之ThinkPHP框架使用详解
Jul 21 #PHP
You might like
Dedecms常用函数解析
2008/02/01 PHP
PHP应用JSON技巧讲解
2013/02/03 PHP
php使用curl抓取qq空间的访客信息示例
2014/02/28 PHP
php使用curl出现Expect:100-continue解决方法
2015/03/03 PHP
PHP正则匹配日期和时间(时间戳转换)的实例代码
2016/12/14 PHP
Javascript的一种模块模式
2008/03/22 Javascript
javascript 写类方式之九
2009/07/05 Javascript
Javascript冒泡排序算法详解
2014/12/03 Javascript
javascript实现图片自动和可控的轮播切换特效
2015/04/13 Javascript
jQuery实现淡入淡出二级下拉导航菜单的方法
2015/08/28 Javascript
JS实现具备延时功能的滑动门菜单效果
2015/09/17 Javascript
学习javascript面向对象 理解javascript对象
2016/01/04 Javascript
ECharts仪表盘实例代码(附源码下载)
2016/02/18 Javascript
JavaScript数据绑定实现一个简单的 MVVM 库
2016/04/08 Javascript
jQuery中的100个技巧汇总
2016/12/15 Javascript
JavaScript中Object值合并方法详解
2017/12/22 Javascript
jQuery替换节点元素的操作方法
2018/03/18 jQuery
node版本管理工具n包使用教程详解
2018/11/09 Javascript
vue自定义指令用法经典实例小结
2019/03/16 Javascript
原生JS 实现的input输入时表格过滤操作示例
2019/08/03 Javascript
微信小程序中的列表切换功能实例代码详解
2020/06/09 Javascript
Python实现统计文本文件字数的方法
2017/05/05 Python
Python函数参数操作详解
2018/08/03 Python
Python操作配置文件ini的三种方法讲解
2019/02/22 Python
python自动化实现登录获取图片验证码功能
2019/11/20 Python
详解Python 重学requests发起请求的基本方式
2020/02/07 Python
Python无头爬虫下载文件的实现
2020/04/02 Python
Django CBV模型源码运行流程详解
2020/08/17 Python
雅诗兰黛(Estee Lauder)英国官方网站:世界顶级化妆品牌
2016/12/29 全球购物
Move Free官方海外旗舰店:美国骨关节健康专业品牌
2017/12/06 全球购物
启动一个线程是用run()还是start()
2016/12/25 面试题
公司财务自我评价分享
2013/12/17 职场文书
食品质量与安全专业毕业生求职信
2014/08/11 职场文书
2015年国际护士节演讲稿
2015/03/18 职场文书
聚众斗殴罪辩护词
2015/05/21 职场文书
python函数指定默认值的实例讲解
2021/03/29 Python