Laravel中怎么轻松输出完整的SQL语句

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

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

源码

laravel-dump-sql - https://github.com/guanguans/laravel-dump-sql

安装

$ 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

config/dumpsql.php 文件中配置方法名称既可


return [

/*

* Get sql statement.

*/

'to_raw_sql' => 'toRawSql',

/*

* Print SQL statements.

*/

'dump_sql' => 'dumpSql',

/*

* Print SQL statements and exit.

*/

'dd_sql' => 'ddSql',

];

本文来自PHP中文网laravel教程的栏目:https://www.php.cn/phpkj/laravel/

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容