>  기사  >  백엔드 개발  >  PHP는 홀수와 짝수의 배열 필터링을 구현합니다.

PHP는 홀수와 짝수의 배열 필터링을 구현합니다.

WBOY
WBOY원래의
2023-05-20 12:33:091014검색

PHP 프로그래밍에서는 배열의 홀수 또는 짝수를 필터링하는 등 배열에 대한 필터링 작업을 수행해야 하는 경우가 많습니다. 그렇다면 PHP에서 배열의 홀수와 짝수를 필터링하는 기능을 구현하는 방법은 무엇입니까? 이 글에서는 참고할 수 있는 두 가지 방법을 소개합니다.

1. for 루프를 사용하여 배열 필터링

for 루프를 사용하여 배열을 필터링하는 것이 가장 기본적인 방법입니다. 배열을 탐색하고 if 문을 사용하여 배열의 각 요소가 홀수인지 짝수인지 확인한 다음 조건을 충족하는 요소를 새 배열에 저장할 수 있습니다.

다음은 샘플 코드입니다.

// 定义原始数组
$arr = array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);

// 定义新数组
$evenArr = array();  // 存储偶数
$oddArr = array();   // 存储奇数

// 循环遍历数组
for($i = 0; $i < count($arr); $i++){
  if($arr[$i] % 2 == 0){  // 判断是否是偶数
    $evenArr[] = $arr[$i];  // 存储偶数
  } else {
    $oddArr[] = $arr[$i];   // 存储奇数
  }
}

// 打印输出结果
echo "原数组:";
print_r($arr);
echo "<br />";
echo "偶数数组:";
print_r($evenArr);
echo "<br />";
echo "奇数数组:";
print_r($oddArr);

위 코드를 실행하면 출력 결과는 다음과 같습니다.

原数组:Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => 6 [6] => 7 [7] => 8 [8] => 9 [9] => 10 )
偶数数组:Array ( [0] => 2 [1] => 4 [2] => 6 [3] => 8 [4] => 10 )
奇数数组:Array ( [0] => 1 [1] => 3 [2] => 5 [3] => 7 [4] => 9 )

실행 결과가 정확하고 짝수와 홀수가 성공적으로 필터링된 것을 확인할 수 있습니다.

2. PHP 내장 함수를 사용하여 필터링

PHP는 배열에서 쉽게 작동할 수 있는 다양한 내장 함수를 제공하며 배열 필터링도 예외는 아닙니다. 그 중 array_filter() 함수를 사용하여 배열의 요소를 필터링할 수 있습니다. 사용 방법은 다음과 같습니다.

$newArr = array_filter($arr, function($n){
  return ($n % 2 == 0);  // 返回为真的元素,即偶数
});

위 코드에서는 array_filter() 함수의 두 번째 매개 변수로 익명 함수를 사용합니다. $n 변수를 사용하여 각 요소의 배열 요소를 바꿉니다. 함수 본문의 return 문은 요소가 짝수인지 여부를 확인합니다. 짝수이면 true를 반환하고, 그렇지 않으면 false를 반환합니다(즉, 새 배열이 추가되지 않습니다). 마지막으로 새 배열 $newArr은 필터링된 짝수 배열입니다.

익명 함수를 사용하는 것 외에도 array_filter() 함수는 "is_odd" 콜백 함수를 사용하여 홀수를 필터링하는 등 미리 설정된 콜백 함수를 직접 사용할 수도 있습니다.

function is_odd($n){
  return ($n % 2 == 1); // 返回为真的元素,即奇数
}

$newArr = array_filter($arr, "is_odd");

위의 두 가지 방법을 사용하면 PHP를 쉽게 구현할 수 있습니다. 배열 필터링 작업. 물론 위의 예제 코드는 단지 데모용일 뿐이며, 실제 적용에는 실제 상황에 따라 좀 더 유연한 동작이 필요할 수 있습니다.

위 내용은 PHP는 홀수와 짝수의 배열 필터링을 구현합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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