formatting
This commit is contained in:
parent
ee2a0b8b4f
commit
44562181ed
|
@ -756,43 +756,43 @@ In addition to passing a string `key`, you may also pass a callback. The callbac
|
|||
],
|
||||
]
|
||||
*/
|
||||
|
||||
Also you can pass criterias as an array. Each array element will applied for the particular level within a multidimensional tree structure:
|
||||
|
||||
Multiple grouping criteria may be passed as an array. Each array element will applied for the corresponding level within a multi-dimensional array:
|
||||
|
||||
$data = new Collection([
|
||||
10 => ['user' => 1, 'skilllevel' => 1, 'roles' => ['Role_1', 'Role_3']],
|
||||
20 => ['user' => 2, 'skilllevel' => 1, 'roles' => ['Role_1', 'Role_2']],
|
||||
30 => ['user' => 3, 'skilllevel' => 2, 'roles' => ['Role_1']],
|
||||
40 => ['user' => 4, 'skilllevel' => 2, 'roles' => ['Role_2']],
|
||||
10 => ['user' => 1, 'skill' => 1, 'roles' => ['Role_1', 'Role_3']],
|
||||
20 => ['user' => 2, 'skill' => 1, 'roles' => ['Role_1', 'Role_2']],
|
||||
30 => ['user' => 3, 'skill' => 2, 'roles' => ['Role_1']],
|
||||
40 => ['user' => 4, 'skill' => 2, 'roles' => ['Role_2']],
|
||||
]);
|
||||
|
||||
$result = $data->groupBy([
|
||||
'skilllevel',
|
||||
'skill',
|
||||
function ($item) {
|
||||
return $item['roles'];
|
||||
},
|
||||
], true);
|
||||
], $preserveKeys = true);
|
||||
|
||||
/*
|
||||
[
|
||||
1 => [
|
||||
'Role_1' => [
|
||||
10 => ['user' => 1, 'skilllevel' => 1, 'roles' => ['Role_1', 'Role_3']],
|
||||
20 => ['user' => 2, 'skilllevel' => 1, 'roles' => ['Role_1', 'Role_2']],
|
||||
],
|
||||
'Role_3' => [
|
||||
10 => ['user' => 1, 'skilllevel' => 1, 'roles' => ['Role_1', 'Role_3']],
|
||||
10 => ['user' => 1, 'skill' => 1, 'roles' => ['Role_1', 'Role_3']],
|
||||
20 => ['user' => 2, 'skill' => 1, 'roles' => ['Role_1', 'Role_2']],
|
||||
],
|
||||
'Role_2' => [
|
||||
20 => ['user' => 2, 'skilllevel' => 1, 'roles' => ['Role_1', 'Role_2']],
|
||||
20 => ['user' => 2, 'skill' => 1, 'roles' => ['Role_1', 'Role_2']],
|
||||
],
|
||||
'Role_3' => [
|
||||
10 => ['user' => 1, 'skill' => 1, 'roles' => ['Role_1', 'Role_3']],
|
||||
],
|
||||
],
|
||||
2 => [
|
||||
'Role_1' => [
|
||||
30 => ['user' => 3, 'skilllevel' => 2, 'roles' => ['Role_1']],
|
||||
30 => ['user' => 3, 'skill' => 2, 'roles' => ['Role_1']],
|
||||
],
|
||||
'Role_2' => [
|
||||
40 => ['user' => 4, 'skilllevel' => 2, 'roles' => ['Role_2']],
|
||||
40 => ['user' => 4, 'skill' => 2, 'roles' => ['Role_2']],
|
||||
],
|
||||
],
|
||||
];
|
||||
|
|
Loading…
Reference in New Issue