>백엔드 개발 >PHP 문제 >PHP에서 배열의 평균을 찾는 방법

PHP에서 배열의 평균을 찾는 방법

PHPz
PHPz원래의
2023-04-23 09:12:142426검색

PHP는 강력한 프로그래밍 언어로서 일상적인 프로그래밍 요구 사항을 충족하기 위해 풍부한 배열 작업 기능을 제공하며, 그 중 배열의 평균을 계산하는 것은 가장 기본적인 작업 중 하나입니다. 이 기사에서는 배열의 평균을 구하는 여러 가지 방법을 소개합니다.

방법 1: array_sum() 및 count() 함수를 사용하세요.

array_sum() 함수는 배열 요소의 합을 계산하는 데 사용되고, count() 함수는 배열 요소의 개수를 계산하는 데 사용됩니다. 배열. 이 두 함수를 결합하면 배열의 평균을 구할 수 있습니다.

샘플 코드는 다음과 같습니다.

function average_1($arr){
    $sum = array_sum($arr);
    $count = count($arr);
    $average = $sum / $count;
    return $average;
}

$arr = [1, 2, 3, 4, 5];
echo average_1($arr); // 输出:3

방법 2: foreach 루프 사용

함수를 사용하는 것 외에도 foreach 루프를 사용하여 배열을 순회하고 요소의 합계와 수를 얻은 다음 최종적으로 평균을 계산할 수도 있습니다. 분할을 통해.

샘플 코드는 다음과 같습니다.

function average_2($arr){
    $sum = 0;
    $count = 0;
    foreach($arr as $value){
        $sum += $value;
        $count++;
    }
    $average = $sum / $count;
    return $average;
}

$arr = [1, 2, 3, 4, 5];
echo average_2($arr); // 输出:3

방법 3: array_reduce() 함수를 사용하세요.

array_reduce() 함수를 사용하여 배열에 있는 요소의 합을 구할 수도 있습니다. 이 함수에는 두 개의 매개변수가 필요하며, 첫 번째 매개변수는 처리할 배열이고, 두 번째 매개변수는 요소 추가 연산을 구현할 수 있는 함수입니다.

샘플 코드는 다음과 같습니다.

function average_3($arr){
    $sum = array_reduce($arr, function($carry, $value){
        return $carry + $value;
    });
    $count = count($arr);
    $average = $sum / $count;
    return $average;
}

$arr = [1, 2, 3, 4, 5];
echo average_3($arr); // 输出:3

방법 4: eval() 함수 사용

권장되지는 않지만 일부 특수한 경우에는 eval() 함수를 사용하여 배열 평균을 계산할 수 있습니다. 구체적인 작업은 배열을 문자열로 변환하고 해당 계산식을 추가한 다음 eval() 함수를 통해 해당 식을 동적으로 실행하여 결과를 얻는 것입니다.

샘플 코드는 다음과 같습니다.

function average_4($arr){
    $str = implode("+", $arr);
    $eval_str = "return ($str)/" . count($arr) . ";";
    $average = eval($eval_str);
    return $average;
}

$arr = [1, 2, 3, 4, 5];
echo average_4($arr); // 输出:3

eval() 함수의 실행 환경이 너무 유연하여 일부 보안 위험이 있으므로 실제 개발에서는 이 함수를 사용하지 않는 것이 좋습니다.

요약하자면, 배열의 평균을 계산하는 것은 PHP 배열 연산의 기본적인 문제이며, 이 문제를 해결하기 위해 다양한 방법을 사용할 수 있습니다. 개발자의 경우 어떤 방법을 선택할지는 특정 애플리케이션 시나리오와 개발 요구 사항에 따라 달라집니다.

위 내용은 PHP에서 배열의 평균을 찾는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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