>  기사  >  백엔드 개발  >  PHP 배열의 특정 필드에 대한 합산 함수는 무엇입니까?

PHP 배열의 특정 필드에 대한 합산 함수는 무엇입니까?

PHPz
PHPz원래의
2023-04-23 17:48:55598검색

PHP에서 배열은 매우 일반적인 데이터 구조입니다. 개발자는 필터링, 정렬, 병합 등의 배열 데이터 작업을 쉽게 수행할 수 있으며 배열의 필드를 합치는 것도 개발의 일반적인 요구 사항입니다.

다음은 PHP에서 배열의 필드 합계 연산을 빠르게 구현하는 간단한 방법입니다.

  1. 먼저 테스트용 배열을 만듭니다. 여기에는 여러 연관 배열이 포함되어 있습니다. 각 연관 배열에는 '이름'과 '값'이라는 두 필드가 포함되어 있습니다.
$testArray = array(
  array('name' => 'apple', 'value' => 10),
  array('name' => 'orange', 'value' => 20),
  array('name' => 'banana', 'value' => 30),
  array('name' => 'watermelon', 'value' => 40),
  array('name' => 'melon', 'value' => 50)
);
  1. 다음으로, PHP의 array_sum() 함수를 사용하여 배열의 필드 값을 합산할 수 있습니다. 이 예에서는 배열의 'value' 필드 값을 합산해야 합니다.
$sum = array_sum(array_column($testArray, 'value'));

위 코드에서는 먼저 array_column() 함수를 사용하여 $testArray 배열에서 'value' 필드의 값을 추출한 다음 array_sum() 함수를 사용하여 합산하여 최종 결과는 다음과 같습니다. $sum.

  1. 마지막으로, 비교를 위해 합산된 값과 원래 배열의 내용을 출력할 수 있습니다.
echo '求和结果为:' . $sum . '<br>';
echo '原始数组内容为:<br>';
print_r($testArray);

전체 코드는 다음과 같습니다.

$testArray = array(
  array('name' => 'apple', 'value' => 10),
  array('name' => 'orange', 'value' => 20),
  array('name' => 'banana', 'value' => 30),
  array('name' => 'watermelon', 'value' => 40),
  array('name' => 'melon', 'value' => 50)
);

$sum = array_sum(array_column($testArray, 'value'));

echo '求和结果为:' . $sum . '<br>';
echo '原始数组内容为:<br>';
print_r($testArray);

실행 결과는

합산 결과는 150
원래 배열 내용은
Array
(

[0] => Array
    (
        [name] => apple
        [value] => 10
    )

[1] => Array
    (
        [name] => orange
        [value] => 20
    )

[2] => Array
    (
        [name] => banana
        [value] => 30
    )

[3] => Array
    (
        [name] => watermelon
        [value] => 40
    )

[4] => Array
    (
        [name] => melon
        [value] => 50
    )

)

보시다시피 우리는 성공적으로 배열되었습니다. 'value' 필드의 값을 합산한 결과는 150입니다. 이 방법은 간단하고 이해하기 쉬우며 데이터의 양이 적은 상황에 적합합니다. 대규모 데이터의 경우 합산 작업에 더 나은 성능을 제공하는 다른 알고리즘을 사용해야 할 수도 있습니다.

위 내용은 PHP 배열의 특정 필드에 대한 합산 함수는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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