>백엔드 개발 >PHP 튜토리얼 >여러 열 및 그룹의 합계 값으로 배열 데이터를 그룹화하는 방법은 무엇입니까?

여러 열 및 그룹의 합계 값으로 배열 데이터를 그룹화하는 방법은 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-11-05 13:18:02515검색

How to Group Array Data by Multiple Columns and Sum Values in Groups?

배열 데이터를 여러 열로 그룹화하고 그룹 내 합계 값으로 그룹화

이런 상황에서는 다차원 배열 데이터를 2개를 기준으로 그룹화하는 것이 필요합니다. 열 값('part' 및 'type')을 계산하고 각 그룹 내 특정 열('count')의 값을 합산합니다. 설명된 대로 입력 배열($arr1)이 주어지면 원하는 출력($arr2)은 '부품'과 '유형'의 각 조합에 대해 합산된 개수 값으로 그룹화된 데이터를 나타냅니다.

이 결과를 얻으려면 사용자 정의 함수를 활용할 수 있습니다:

<code class="php">function groupByPartAndType($input) {
  $output = Array();

  foreach($input as $value) {
    $output_element = &amp;$output[$value['part'] . "_" . $value['type']];
    $output_element['part'] = $value['part'];
    $output_element['type'] = $value['type'];
    !isset($output_element['count']) &amp;&amp; $output_element['count'] = 0;
    $output_element['count'] += $value['count'];
  }

  return array_values($output);
}</code>

이 함수에서:

  • $output 배열은 그룹화된 데이터를 저장하기 위해 생성됩니다.
  • $의 각 요소 input이 반복됩니다.
  • $output 요소의 키는 'part' 값과 'type' 값을 연결하여 생성됩니다.
  • $output_element의 값은 이에 따라 할당되거나 업데이트됩니다.
  • 마지막으로 array_values()는 $output 배열의 값을 새 배열로 반환하는 데 사용됩니다.

또는 두 데이터베이스가 동일한 데이터베이스 서버에 있는 경우 그룹화 및 SQL의 GROUP BY 기능을 사용하면 합산을 효율적으로 수행할 수 있습니다.

위 내용은 여러 열 및 그룹의 합계 값으로 배열 데이터를 그룹화하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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