PHP에서는 배열에 있는 동일한 데이터 유형의 수를 계산하는 것이 매우 일반적인 요구 사항입니다. 예를 들어, 배열에서 정수 유형 요소의 수를 세거나 배열에서 문자열 유형 요소의 발생 횟수를 계산합니다. 이 기사에서는 PHP에서 동일한 데이터 유형의 통계 배열을 구현하는 방법을 소개합니다.
방법 1: count 및 is_numeric 함수 사용
먼저 PHP에 내장된 count 함수를 사용하여 배열 길이를 얻은 다음 is_numeric 함수를 사용하여 요소가 숫자 유형인지 확인할 수 있습니다. 코드는 다음과 같습니다.
function countNumerics($arr) { $count = 0; foreach ($arr as $el) { if (is_numeric($el)) { $count++; } } return $count; }
위 코드는 foreach 루프를 사용하여 배열의 각 요소를 순회하고 is_numeric 함수를 사용하여 요소가 숫자 유형인지 확인합니다. 그렇다면 $count 변수의 값을 늘리십시오. 마지막으로 $count 변수를 반환합니다. 이 함수는 숫자 유형의 요소 개수만 계산할 수 있습니다. 다른 유형의 요소 개수만 계산하려면 is_numeric 함수를 다른 유형에 대한 판단 함수로 수정해야 합니다.
방법 2: array_filter 및 gettype 함수 사용
또 다른 방법은 PHP에서 array_filter 함수와 gettype 함수를 사용하는 것입니다. array_filter 함수는 배열의 요소를 필터링하는 데 사용할 수 있으며 gettype 함수는 요소 유형을 얻을 수 있습니다. 코드는 다음과 같습니다.
function countType($arr, $type) { return count(array_filter($arr, function ($el) use ($type) { return gettype($el) == $type; })); }
위 코드는 먼저 array_filter 함수를 호출하여 $type 유형의 모든 요소를 필터링한 다음 count 함수를 사용하여 필터링된 배열 길이를 얻습니다.
방법 3: array_reduce 및 gettype 함수 사용
또 다른 방법은 array_reduce 함수와 gettype 함수를 사용하는 것입니다. array_reduce 함수를 사용하면 배열의 모든 요소에 대해 콜백을 실행하여 해당 요소를 단일 값으로 줄일 수 있습니다. 코드는 다음과 같습니다.
function countType($arr, $type) { return array_reduce($arr, function ($count, $el) use ($type) { return $count + (gettype($el) == $type); }, 0); }
위 코드는 array_reduce 함수를 사용하여 배열의 각 요소를 반복하고 요소 유형이 $type인 경우 $count 변수에 1을 추가합니다. 마지막으로 $count 변수를 반환합니다.
요약
위는 PHP에서 동일한 데이터 유형의 배열을 계산하는 세 가지 방법입니다. 이 세 가지 방법은 각각 다르며 어떤 방법을 선택하는지는 특정 요구 사항과 코딩 스타일에 따라 다릅니다. 한 데이터 유형의 요소 수만 계산해야 하는 경우 방법 1이 간단한 솔루션입니다. 여러 유형을 계산해야 하거나 보다 명확한 코드 구조를 원하는 경우 방법 2 또는 3을 선택할 수 있습니다.
위 내용은 PHP의 배열에서 동일한 데이터 유형을 계산하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!