【发布时间】:2020-06-20 05:07:30
【问题描述】:
我想在刀片的表格中显示 $personnals 和 $users。 我知道,我必须使用 @foreach。但我不能。因为,我有两个查询,我无法分页并显示它们。
$personnals = DB::table('orders')
->where('pay_type', 1)
->leftJoin('personnels', 'orders.personnel_id', '=', 'personnels.id')
->leftJoin('users', 'personnels.user_id', '=', 'users.id')
->select(['name AS personnelName', 'lastname AS personnelLastName'])
->get();
$users = DB::table('orders')
->where('pay_type', 1)
->leftJoin('users', 'orders.user_id', '=', 'users.id')
->select(['name AS userName', 'lastname AS userLastName', 'orderCode'])
->get();
$personnals 有 100 个元素,$users 也有 100 个元素。每个元素都是一个数组。我想将这些数组合并在一起,得到一个包含 100 个数组元素的数组。
例如:我想要 $result 之类的东西:
$personnals = [ [ 'a'=>'blue', 'b'=>'red' ], [ 'a'=>'green', 'b'=>'black' ] ];
$users = [ [ 'c'=>'yellow', 'd'=>'orange' ], [ 'c'=>'white', 'd'=>'pink' ] ];
$result = [
[ 'a'=>'blue', 'b'=>'red', 'c'=>'yellow', 'd'=>'orange' ] ,
[ 'a'=>'green', 'b'=>'black', 'c'=>'white', 'd'=>'pink' ]
];
如何通过分页在刀片中显示这些内容?
或
我可以在一个查询中显示所有内容吗?如何?
谢谢。
【问题讨论】:
-
请阅读 Laravel 文档中有关 Laravel 查询构建器的分页功能:laravel.com/docs/7.x/pagination 您可能还想在这两个数组之间进行连接。您可以通过快速搜索
array_merge函数找到如何操作。 -
我有两个查询,我不能在刀片和 foreach 中一起显示这些。
-
如果你将这两个数组连接成一个数组,你可以通过
foreach展示那些使用 Blade 的人。 -
是的。我使用 merge_array() ,但第二个数组在第一个数组之后合并,但我想合并在一起。
-
您没有按照应有的方式使用
array_merge函数。请尝试以下代码:$data = array_merge($personnals, $users);,并在@foreach循环中使用新创建的变量$data。
标签: php mysql laravel query-builder laravel-query-builder