PHP에서는 배열의 열을 합산하는 것이 일반적인 요구 사항입니다. 배열이 1차원 배열인 경우 array_sum() 함수를 사용합니다. 예를 들면 다음과 같습니다.
$array = array(1, 2, 3, 4, 5); $sum = array_sum($array); // $sum = 15
하지만 배열이 2차원 배열인 경우 먼저 해당 열의 모든 값을 추출한 다음 합산해야 합니다. array_column() 함수를 사용하여 컬럼의 값을 추출한 후, array_sum() 함수를 사용하여 해당 값의 합을 구할 수 있습니다. 예:
$records = array( array('name' => 'John', 'score' => 85), array('name' => 'Mary', 'score' => 92), array('name' => 'Peter', 'score' => 78), array('name' => 'Lisa', 'score' => 89) ); $scores = array_column($records, 'score'); $sum = array_sum($scores); // $sum = 344
위의 예에서 $records는 각 사람의 이름과 점수를 포함하는 2차원 배열입니다. array_column() 함수를 사용하여 모든 점수를 추출한 다음 array_sum() 함수를 사용하여 합산하여 총 점수가 344가 됩니다.
열의 값에 숫자가 아닌 유형(예: 문자열)이 포함된 경우 먼저 유형 변환을 통해 숫자로 변환해야 한다는 점에 유의하세요. 그렇지 않으면 합계 결과가 부정확할 수 있습니다. 예:
$records = array( array('name' => 'John', 'score' => '85'), array('name' => 'Mary', 'score' => '92'), array('name' => 'Peter', 'score' => '78'), array('name' => 'Lisa', 'score' => '89') ); $scores = array_column($records, 'score'); $sum = array_sum($scores); // $sum = 0
위 예에서 $records의 점수는 모두 문자열 유형입니다. 직접 합산하면 0이라는 부정확한 결과를 얻게 됩니다. array_column() 함수의 세 번째 인수를 지정하여 숫자 유형으로 변환할 수 있습니다. 예:
$records = array( array('name' => 'John', 'score' => '85'), array('name' => 'Mary', 'score' => '92'), array('name' => 'Peter', 'score' => '78'), array('name' => 'Lisa', 'score' => '89') ); $scores = array_column($records, 'score', 'name'); $scores = array_map('intval', $scores); $sum = array_sum($scores); // $sum = 344
위의 예에서는 array_column() 함수를 사용하여 각 사람의 점수를 추출하고 이름을 키로, 점수를 값으로 사용하여 새 배열에 저장합니다. 그런 다음 array_map() 함수를 사용하여 이 값을 유형 변환하고 마지막으로 array_sum() 함수를 사용하여 합산하여 올바른 결과인 344를 얻습니다.
요약하자면, PHP에서는 배열의 열을 합산하는 것이 어렵지 않습니다. 데이터 유형에만 주의하면 됩니다.
위 내용은 PHP에서 배열의 열을 합산하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!