E.B*_*E.B 1 sql database laravel eloquent laravel-blade
我有一个收藏。
$items = Item:where('count' , '>' , 5)->get();
Run Code Online (Sandbox Code Playgroud)
我有一组 id。
$ids = [2 , 4 , 7 , 8];
Run Code Online (Sandbox Code Playgroud)
在我的 Laravel 刀片中,我想根据 ids 数组在 $items 上显示每个。我做了这样的事情:
@foreach($ids as $id)
<a href="#">
{{ $items->where('id' ,$id)->first()->name }}
</a>
@endforeach
Run Code Online (Sandbox Code Playgroud)
它工作得很好。问题是,我向数据库发送了多少查询?以下是否在运行新查询?
$items->where('id' ,$id)->first()->name
Run Code Online (Sandbox Code Playgroud)
因为我已经get()从数据库中的项目。另一个问题是,如何在显示视图/刀片时找出有多少查询被发送到数据库?
小智 5
检查/调试在 laravel 页面上执行的所有查询:(下面的代码可以插入到根文件中)
\Event::listen('Illuminate\Database\Events\QueryExecuted', function ($query) {
var_dump($query->sql);
var_dump($query->bindings);
var_dump($query->time);
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1451 次 |
| 最近记录: |