计算相同值 Laravel Collection
Count Same Value Laravel Collection
我想在 laravel collection 上计算相同的值,这是我的数组:
[
'January' => [
[
'status' => 'active',
], [
'status' => 'active',
], [
'status' => 'disable',
], [
'status' => 'active',
],
'February' => [
'status' => 'active',
], [
'status' => 'active',
], [
'status' => 'disable',
], [
'status' => 'disable',
],
]
我想计算相同的值是这样的:
[
'January' => [
'active' => 3
'disable' => 1,
],
'February' => [
'active' => 2,
'disable' => 2,
]
如何使用 laravel collection ?
您可以使用 Collection 的 map
和 countBy
来执行此操作:
collect($array)->map(fn ($i) => collect($i)->countBy('status'));
我想在 laravel collection 上计算相同的值,这是我的数组:
[
'January' => [
[
'status' => 'active',
], [
'status' => 'active',
], [
'status' => 'disable',
], [
'status' => 'active',
],
'February' => [
'status' => 'active',
], [
'status' => 'active',
], [
'status' => 'disable',
], [
'status' => 'disable',
],
]
我想计算相同的值是这样的:
[
'January' => [
'active' => 3
'disable' => 1,
],
'February' => [
'active' => 2,
'disable' => 2,
]
如何使用 laravel collection ?
您可以使用 Collection 的 map
和 countBy
来执行此操作:
collect($array)->map(fn ($i) => collect($i)->countBy('status'));