$groupedData = collect($data)->groupBy(function ($item) use ($otherArray) { // 返回 $item 对应的分组值 return $otherArray[$item]; }); 在上述代码中,$item表示$data数组中的每个元素,$otherArray[$item]表示根据$item在$otherArray中找到对应的值作为分组依据。
前言集合通过Illuminate\Support\Collection 进行实例,Laravel的内核大部分的参数传递都用到了集合,但这并不代表集合就是好的。...创建集合 $collection = collect([1, 2, 3]); 显而易见,这是一部非常简单的操作,请打住你想说“这种操作很复杂”的话,它更类似与早起PHP5.x的版本的声明方式。...$co...
var_export( $arrival_data ->groupBy('arrival_date') ->map(fn($row) => collect($row->first())->put('total_amount', $row->sum('total_amount'))) ->values() ->toArray() ); To be honest, I did expect to be able to omit the values() call by adding false as the preserveKe...
$collection = collect([ ['id' => 1, 'cardId' => 100, 'cardQuantity' => 1234], ['id' => 2, 'cardId' => 100, 'cardQuantity' => 1234], ['id' => 7, 'cardId' => 200, 'cardQuantity' => 1234], ['id' => 8, 'cardId' => 200, 'cardQuantity' => 1234],...
$collection = collect([1, 2, 3, 4]); $collection->count(); // 4countBy()The countBy method counts the occurrences of values in the collection. By default, the method counts the occurrences of every element:$collection = collect([1, 2, 2, 2, 3]); $counted = $collection->count...
->get();returncollect($studentCourse)->groupBy('uid')->map(function ($item) {return$item->keyBy(function ($value) {returnsprintf("%s-%s-%s", $value['uid'], $value['grade_type'], $value['subject']); })->toArray(); })->toArray(); ...
技巧:当你有一个 php Enumerable 的实例并且需要一个非惰性集合实例时,php collect 方法特别有用。由于 php collect() 是php Enumerable 合约的一部分,你可以安全地使用它来获取 php Collection 实例。php combine()php combine 方法将集合的值作为键与另一个数组或集合的值组合:...
The forget method removes an item from the collection by its key:$collection = collect(['name' => 'taylor', 'framework' => 'laravel']); $collection->forget('name'); $collection->all(); // ['framework' => 'laravel']Unlike most other collection methods, forget does not return a ...
https://laravel.com/docs/7.x/collections#method-groupby 这显示了groubBy()返回的内容。试试这个...
正如上面所提到的,辅助函数 collect 返回一个新的 Illuminate\Support\Collection 实例,所以说,创建集合是很简单的:$collection = collect([1, 2, 3]); 注:默认情况下,Eloquent 查询的结果总是返回 Collection 实例。扩展集合集合是可扩展的,这意味着我们可以在运行时动态添加方法到 Collection 类,例如,下面的代码...