Laravel - 如何查看查询来源?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Laravel - 如何查看查询来源?相关的知识,希望对你有一定的参考价值。
我知道你可以在Laravel中记录查询。但我想知道是否有办法记录运行查询的脚本的名称。因此,例如,如果记录了update
查询,我也想知道它是由PostController.php
发起的。
我正在开发一个使用数百个查询的非常大的应用程序,当我需要删除一个查询时,很难找到该查询的来源。
有任何想法吗?
答案
正如您在Connection::logQuery()
中看到的,每个数据库查询都会触发QueryExecuted事件。
你可以使用listen to this event,并使用debug_backtrace()
来抓取函数调用。
use IlluminateSupportFacadesDB;
DB::listen(function ($query) {
// send this to a log or whatever
$backtrace = debug_backtrace();
// also, you can read $query to get the SQL string, bindings...
});
主要工作可能是过滤数据,以隔离您要查找的内容。
以上是关于Laravel - 如何查看查询来源?的主要内容,如果未能解决你的问题,请参考以下文章