我如何让查询构建器将其原始的SQL查询输出为字符串?
我如何让查询构建器将其原始的SQL查询输出为字符串?
给定以下代码:
DB::table('users')->get();
我想获取数据库查询构建器将生成的原始SQL查询字符串。在这个例子中,它应该是SELECT * FROM users
。
我该怎么做?
admin 更改状态以发布 2023年5月25日
要在屏幕上输出最后运行的查询,可以使用以下代码:
\DB::enableQueryLog(); // Enable query log // Your Eloquent query executed by using get() dd(\DB::getQueryLog()); // Show results of log
我相信最近的查询会在数组的底部。
你会得到像这样的东西:
array(1) { [0]=> array(3) { ["query"]=> string(21) "select * from "users"" ["bindings"]=> array(0) { } ["time"]=> string(4) "0.92" } }
(感谢Joshua在下面的评论中提供的帮助。)