Grouping
group
Definition
Arr::group(array $array, string|int $key): arrayDescription
Group array of arrays by value of element with specified key
Examples
$array = [
'a' => ['key1' => 'test1', 'key2' => 1, 'key3' => 'a'],
'b' => ['key1' => 'test1', 'key2' => 2],
2 => ['key1' => 'test2', 'key2' => 3, 'key3' => 'b']
];
Arr::group($array, 'key1') ->
[
'test1' => [
'a' => ['key1' => 'test1', 'key2' => 1, 'key3' => 'a'],
'b' => ['key1' => 'test1', 'key2' => 2]
],
'test2' => [
2 => ['key1' => 'test2', 'key2' => 3, 'key3' => 'b']
],
]
Arr::group($array, 'key2') ->
[
1 => [
'a' => ['key1' => 'test1', 'key2' => 1, 'key3' => 'a'],
],
2 => [
'b' => ['key1' => 'test1', 'key2' => 2]
],
3 => [
2 => ['key1' => 'test2', 'key2' => 3, 'key3' => 'b']
],
]
Arr::group($array, 'key3') ->
[
'a' => [
'a' => ['key1' => 'test1', 'key2' => 1, 'key3' => 'a']
],
'b' => [
2 => ['key1' => 'test2', 'key2' => 3, 'key3' => 'b']
],
]
Arr::group($array, 'key4') -> []groupObjects
Definition
Description
Group array of objects by value returned from specified method
Examples
Last updated
Was this helpful?