如何在laravel控制器中使用两个foreach循环来传递数据


public function index2(){
$s_books = raws::orderBy('sequence', 'ASC')->where('type',"book")->get();
foreach ($s_books as $data) {
$menu="{$data->menu}";
$main_books = books::orderBy('id', 'DESC')->where("menu",$menu)->get();
}
return view('index')->with(['main_books'=>$main_books]);}

这是Blade

@foreach($main_books as $data)
{{$data->id}}
@endforeach

但这只是最后的数据。如何在laravel blade中显示$main_book中的所有数据???

您所拥有的代码,您将只获得最后一项,您需要将所有项放入一个数组中。在controller中尝试此代码。

$main_books = [];
foreach ($s_books as $data) {
$menu="{$data->menu}";
array_push($main_books, books::orderBy('id', 'DESC')->where("menu",$menu)->get());
}

最新更新