>  기사  >  백엔드 개발  >  PHP 함수 매뉴얼 array_filter()

PHP 함수 매뉴얼 array_filter()

PHPz
PHPz원래의
2023-06-20 11:39:107964검색

PHP 함수 매뉴얼 - array_filter()

PHP는 뛰어난 프로그래밍 언어로서 매우 풍부한 내장 함수 세트와 외부 확장 라이브러리를 갖추고 있습니다. 배열은 PHP에서 매우 일반적이고 중요한 데이터 유형이므로 PHP 함수 라이브러리에는 매우 풍부한 연산 함수 배열이 있습니다. array_filter() 함수는 배열의 요소를 필터링하는 데 사용할 수 있는 매우 실용적인 함수 중 하나입니다.

1. 함수 개요

array_filter() 함수는 배열의 요소를 필터링하는 데 사용되는 함수입니다. 새 배열의 요소는 특정 조건에 따라 원래 배열의 요소로 필터링됩니다. . 오다. 공식 문서의 정의에 따르면 구문은 다음과 같습니다.

array array_filter (array $array [, callable $callback [, int $flag = 0 ]] )

여기서 $array는 원래 배열을 나타냅니다. $callback은 선택적 콜백 함수 매개변수이고, $flag는 선택적 마스크 매개변수입니다.

2. 함수 매개변수

  1. $array

$array는 필터링할 원본 배열을 나타냅니다. 이 매개변수는 배열 유형이어야 합니다. 이 매개변수가 배열이 아닌 경우 빈 배열이 반환됩니다.

  1. $callback

$callback은 선택적 콜백 함수 매개변수입니다. 반환 값은 부울 유형이어야 합니다. $callback 함수가 주어지지 않거나 null인 경우 array_filter() 함수는 원래 배열의 모든 요소가 참 값인지 확인하고 참 반환 값을 가진 요소를 새 배열로 수집합니다.

  1. $flag

$flag는 선택적 마스크 매개변수입니다. 세 가지 값을 사용할 수 있습니다.

  • ARRAY_FILTER_USE_KEY - 콜백 함수에 값 대신 키를 전달합니다.
  • ARRAY_FILTER_USE_BOTH - 키 이름과 값을 콜백 함수에 전달합니다.
  • 기본값은 0입니다. 이는 기본적으로 콜백 함수에만 값이 전달된다는 의미입니다.

3. 함수 반환 값

array_filter() 함수의 반환 값은 새로운 배열입니다. 새 배열에는 소스 배열의 조건을 충족하는 요소만 포함됩니다. 반환된 새 배열이 비어 있으면 빈 배열이 반환됩니다.

4. 함수 예제

아래에서는 array_filter() 함수의 사용법을 보여주기 위해 몇 가지 예제를 사용합니다.

  1. 짝수 필터링

// 배열에서 짝수 필터링
function filter_odd($var)
{

return ($var & 1) == 0;

}
$arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
$filtered_arr = array_filter($arr, "filter_odd");
print_r($filtered_arr);

출력:

Array
(

[1] => 2
[3] => 4
[5] => 6
[7] => 8
[9] => 10

)

이 예에서는 배열의 짝수를 필터링하는 콜백 함수 filter_odd(). array_filter() 함수를 호출할 때 이 콜백 함수를 $callback 매개변수로 전달합니다. 이 함수는 원래 배열의 짝수만 포함하는 새 배열을 반환합니다.

  1. 필터링의 Null 값

// 배열에서 비어 있지 않은 요소 필터링
$arr = ["", "hello", NULL, "world", false, 0, [], " " , " test"];
$filtered_arr = array_filter($arr);
print_r($filtered_arr);

출력:

Array
(

[1] => hello
[3] => world
[7] =>  
[8] => test

)

이 예에서는 $callback 매개변수를 지정하지 않았습니다. , array_filter( ) 함수는 배열의 모든 요소가 참 값인지 확인하며, 빈 문자열, NULL, false, 0 및 빈 배열은 거짓 값으로 간주되므로 새 배열에 포함되지 않습니다.

  1. 배열에서 길이가 2보다 큰 문자열을 필터링하세요

// 배열에서 길이가 2보다 큰 문자열을 필터링하세요
$arr = ["php", "html", "css", " js"];
$filtered_arr = array_filter($arr, function($var) {

return strlen($var) > 2;

});
print_r($filtered_arr);

출력:

Array
(

[0] => php
[1] => html
[2] => css

)

이 예에서는 , $flag 매개변수 지정은 없지만 문자열 길이가 2보다 큰지 확인하는 데 사용되는 $callback으로 익명 함수를 사용합니다. 이 함수는 길이가 2보다 큰 문자열만 포함하는 새 배열을 반환합니다.

5. 요약

array_filter() 함수는 불필요한 데이터를 필터링하고, 유용한 데이터만 유지하며, 데이터를 더욱 간소화하는 데 도움이 되는 매우 실용적인 배열 연산 함수입니다. 이는 매우 편리하고 일부 배열 작업 작업을 쉽게 완료할 수 있으며 PHP 프로그램의 개발 효율성을 향상시킬 수 있습니다.

위 내용은 PHP 함수 매뉴얼 array_filter()의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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