laravel中的toSql如何获取带参数的sql语句
发布时间 - 2020-02-02 00:00:00 点击率:次默认情况下,tosql 获取到的 sql 里面的参数使用 "?" 代替的,如下:
DB::table('user')->where('id', 1)->toSql();获取到的 sql 语句是:
select * from `tb_user` where `id` = ?
有时候我们想要得到具体的语句,可以利用 builder 的 getBindings 方法:
$builder = DB::table('user')->where('id', 1);
$bindings = $builder->getBindings();
$sql = str_replace('?', '%s', $builder->toSql());
$sql = sprintf($sql, ...$bindings);
dd($sql);获取到的 sql 语句是:
select * from `tb_user` where `id` = 1
如果经常使用可以考虑使用 Builder 的 macro 方法加进 Builder 里面:
\Illuminate\Database\Query\Builder::macro('sql', function () {
$bindings = $this->getBindings();
$sql = str_rep
lace('?', '%s', $this->toSql());
return sprintf($sql, ...$bindings);
});
dd(DB::table('user')->where('id', 1)->sql());更多laravel框架相关技术文章,请访问laravel教程栏目!
# laravel
# 可以利用
# 情况下
# id
# toSql
# table
# user
# DB
# getBindings
# bindings
# builder
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
深圳网站制作平台,深圳市做网站好的公司有哪些?
HTML5空格在Angular项目里怎么处理_Angular中空格的渲染问题【详解】
Laravel Asset编译怎么配置_Laravel Vite前端构建工具使用
移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?
公司门户网站制作公司有哪些,怎样使用wordpress制作一个企业网站?
Linux系统运维自动化项目教程_Ansible批量管理实战
Laravel怎么使用Intervention Image库处理图片上传和缩放
如何确认建站备案号应放置的具体位置?
Laravel怎么写单元测试_PHPUnit在Laravel项目中的基础测试入门
详解Nginx + Tomcat 反向代理 如何在高效的在一台服务器部署多个站点
Laravel distinct去重查询_Laravel Eloquent去重方法
Laravel怎么判断请求类型_Laravel Request isMethod用法
Laravel如何清理系统缓存命令_Laravel清除路由配置及视图缓存的方法【总结】
详解vue.js组件化开发实践
Laravel如何实现邮箱地址验证功能_Laravel邮件验证流程与配置
iOS正则表达式验证手机号、邮箱、身份证号等
网站制作企业,网站的banner和导航栏是指什么?
Python数据仓库与ETL构建实战_Airflow调度流程详解
微信小程序 scroll-view组件实现列表页实例代码
详解jQuery中基本的动画方法
软银砸40亿美元收购DigitalBridge 强化AI资料中心布局
如何在阿里云高效完成企业建站全流程?
PHP正则匹配日期和时间(时间戳转换)的实例代码
如何在局域网内绑定自建网站域名?
Laravel怎么定时执行任务_Laravel任务调度器Schedule配置与Cron设置【教程】
如何在云虚拟主机上快速搭建个人网站?
Laravel如何操作JSON类型的数据库字段?(Eloquent示例)
Python企业级消息系统教程_KafkaRabbitMQ高并发应用
千库网官网入口推荐 千库网设计创意平台入口
移动端脚本框架Hammer.js
Linux系统命令中tree命令详解
Laravel怎么连接多个数据库_Laravel多数据库连接配置
Laravel如何使用Livewire构建动态组件?(入门代码)
如何利用DOS批处理实现定时关机操作详解
用v-html解决Vue.js渲染中html标签不被解析的问题
Laravel怎么做缓存_Laravel Cache系统提升应用速度的策略与技巧
Laravel怎么导出Excel文件_Laravel Excel插件使用教程
千问怎样用提示词获取健康建议_千问健康类提示词注意事项【指南】
如何在服务器上三步完成建站并提升流量?
如何快速生成可下载的建站源码工具?
如何确保西部建站助手FTP传输的安全性?
香港服务器部署网站为何提示未备案?
详解ASP.NET 生成二维码实例(采用ThoughtWorks.QRCode和QrCode.Net两种方式)
Laravel如何使用Laravel Vite编译前端_Laravel10以上版本前端静态资源管理【教程】
Laravel Eloquent性能优化技巧_Laravel N+1查询问题解决
Laravel如何与Docker(Sail)协同开发?(环境搭建教程)
购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?
Laravel如何配置.env文件管理环境变量_Laravel环境变量使用与安全管理
家族网站制作贴纸教程视频,用豆子做粘帖画怎么制作?
mc皮肤壁纸制作器,苹果平板怎么设置自己想要的壁纸我的世界?


lace('?', '%s', $this->toSql());
return sprintf($sql, ...$bindings);
});
dd(DB::table('user')->where('id', 1)->sql());