>백엔드 개발 >PHP 튜토리얼 >불규칙한 다차원 배열의 열 합계를 효율적으로 계산하는 방법은 무엇입니까?

불규칙한 다차원 배열의 열 합계를 효율적으로 계산하는 방법은 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-12-24 14:45:14688검색

How to Efficiently Calculate Column Totals in Irregular Multi-Dimensional Arrays?

다차원 배열에서 열 합계를 계산하는 방법

요소가 행과 열로 배열되는 다차원 배열을 생각해 보세요. 그러나 키 세트는 동적으로 달라질 수 있습니다. 작업은 키 변형에 관계없이 각 열 내의 값 합계를 계산하는 것입니다.

Array_Walk_Recursive 메서드

내부 배열이 고유 키를 가질 수 있는 일반적인 솔루션의 경우, array_walk_recursive() 활용:

$final = array();

array_walk_recursive($input, function($item, $key) use (&$final){
    $final[$key] = isset($final[$key]) ?  $item + $final[$key] : $item;
});

Array_Column 방법

특정 키 값을 합산해야 하는 경우 array_column()을 사용할 수 있습니다.

array_sum(array_column($input, 'gozhi')); // Sums the 'gozhi' column

균일한 내부 배열의 경우

모든 내부 배열이 동일한 키를 갖는 경우 초기 키를 얻습니다. 구조:

$final = array_shift($input);

foreach ($final as $key => &$value){
   $value += array_sum(array_column($input, $key));
}    

unset($value);

Array_Column이 있는 일반 사례

고유 키 추출 및 열 합계 수행:

$final = array();

foreach($input as $value)
    $final = array_merge($final, $value);

foreach($final as $key => &$value)
    $value = array_sum(array_column($input, $key));

unset($value);

위 내용은 불규칙한 다차원 배열의 열 합계를 효율적으로 계산하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.