使用键分隔计算 php 数组的方法

Way to count a php array with key separation

我可能需要这里专家的帮助:)

我有一个 php 数组:

Array ( [A] => 5 [B] => 1 [A,B] => 5 )

为了统计,我需要对每个关键字的值求和。所以我需要这样的输出:

Array ( [A] => 10 [B] => 6 )

有人出主意吗?非常感谢任何帮助:)

$arr = [ 'A' => 5, 'B' => 1, 'A,B' => 5 ];

$result = [];

array_walk($arr, function ($value, $key) use (&$result) {
  $keys = explode(',', $key);
  foreach ($keys as $key) {
    if (array_key_exists($key, $result)) {
      $result[$key] += $value;
    } else {
      $result[$key] = $value;
    }
  }
});

print_r($result);

输出:

Array
(
    [A] => 10
    [B] => 6
)