考虑将Laravel与Eloquent一起使用,但我知道在给定我们的网站的情况下,最终我们需要问,“那么Eloquent实际生成的原始SQL查询是什么?”所以我们可以对该查询进行故障排除,看看出了什么问题......我在文档中看不到这些信息。
那么我们如何提取Eloquent生成的查询呢?
答案 0 :(得分:1)
最快的方法是将此添加到您的路线,控制器操作甚至app / start / global.php:
DB::listen(function($sql, $bindings, $time) {
Log::info($sql);
});
记录它,所以你可以
php artisan tail
查看您的疑问。
如果您只需要将一个查询直接记录到页面上它几乎相同,您只需将其放在执行查询的位置:
DB::listen(function($sql, $bindings, $time) {
var_dump($sql);
var_dump($bindings);
});
Posts::where('title', 'My First Post')->get();
die;
它将在页面中回显它。
您还可以使用Clockwork Chrome扩展程序(https://chrome.google.com/webstore/detail/clockwork/dmggabnehkmmfmdffgajcflpdjlnoemp?hl=en),这是要在Laravel上安装的PHP程序包:https://github.com/itsgoingd/clockwork。
发条为您提供了一个非常好的应用程序分析视图。