如何在laravel / phpunit中测试查询执行了多长时间?
是否有可能不依赖其他东西?
答案 0 :(得分:14)
最古老的方式是最好的方式:
$start = microtime(true);
// Execute the query
$time = microtime(true) - $start;
答案 1 :(得分:4)
由于Laravel 5.2 listen
已更改为只有一个参数:
\DB::listen(function ($query) {
// $query->sql
// $query->bindings
// $query->time
});
答案 2 :(得分:0)
您可listen
执行此类查询并将结果记录在storage/logs/laravel.log
。
\DB::listen(function ($sql, $bindings, $time) {
\Log::info($sql, $bindings, $time);
});
您只能使用$time
,但我已记录$sql, $bindings, $time
以完成。
您可以将其放在AppServiceProvider
。
<强>更新强>
在Laravel版本中&gt; 5.5此方法在文档中记录为listening for query events;)
答案 3 :(得分:0)
您可以从Laravel 6.x开始使用ddd($someVar)
帮助程序。
有Queries
标签,用于描述直到ddd()