현재 위치: > 최신 기사 목록> 콜백 함수에 array_filter ()에 매개 변수가없는 경우 기본 동작은 무엇입니까?

콜백 함수에 array_filter ()에 매개 변수가없는 경우 기본 동작은 무엇입니까?

M66 2025-06-05

PHP에서 Array_Filter ()는 배열에서 요소를 필터링하는 데 사용되는 매우 일반적인 배열 처리 기능입니다. Array_Filter () 함수는 두 개의 매개 변수를 수용 할 수 있고, 첫 번째 매개 변수는 배열이고, 두 번째 매개 변수는 콜백 함수 (선택 사항)입니다. 콜백 함수가 제공되지 않으면 기본 동작이 사용됩니다.

array_filter () 함수의 구문

 array_filter(array $array, callable $callback = null, int $mode = 0): array
  • $ 배열 : 보류중인 배열.

  • $ 콜백 : 각 배열 요소의 콜백 함수. 콜백 함수는 요소가 유지되는지 여부를 결정하려면 true 또는 false를 반환해야합니다.

  • $ 모드 : 옵션 매개 변수 필터링 방법을 지정하려면 기본값은 0 입니다.

콜백 함수가 제공되지 않으면 Array_Filter ()는 기본 동작을 사용합니다.

기본 동작 : 모든 잘못된 값을 삭제합니다

Array_Filter () 가 콜백 함수를받지 않으면 기본 필터링 동작을 자동으로 사용합니다. 배열에서 모든 "false 값"을 삭제하십시오. PHP에서 "False 값"은 다음을 포함합니다.

  • 거짓

  • 0 (정수 0)

  • 0.0 (부동 소수점 번호 0)

  • '' (빈 문자열)

  • '0' (문자열 '0')

  • 빈 배열

이러한 잘못된 값은 배열에서 제거되며 실제 값으로 간주되는 요소 만 유지됩니다.

다음과 같은 배열이 있다고 가정합니다.

 $array = [0, 1, false, 2, null, 3, '', '0', 4];

콜백 함수를 전달하지 않고 array_filter ()를 호출하는 경우 :

 $result = array_filter($array);
print_r($result);

출력은 다음과 같습니다.

 Array
(
    [1] => 1
    [3] => 2
    [5] => 3
    [8] => 4
)

보시다시피, 모든 "false 값"이 제거되었으며 배열에 유효한 요소 만 남습니다.

시나리오를 사용하십시오

이 기본 동작은 특히 유효하지 않은 데이터를 제거 해야하는 배열을 처리 할 때 매우 유용합니다. 예를 들어, 사용자 양식에서 일부 데이터를 가져 오면 NULL 값, 0 또는 NULL이 포함될 수 있습니다. Array_Filter () 기본 동작을 사용하여 이러한 유효하지 않은 데이터를 신속하게 지우고 유효한 값을 유지하십시오.

요약

  • Array_Filter ()가 콜백 함수를 제공하지 않으면 기본적으로 배열에서 "false 값"을 제거합니다.

  • 이 기본 동작은 개발자가 불완전하거나 유효하지 않은 입력을 처리 할 때 불필요한 데이터를 쉽게 필터링하는 데 도움이 될 수 있습니다.

기타 노트 :

  • 사용자 정의 규칙에 따라 배열을 필터링하려면 기본 동작에 의존하는 대신 콜백 함수를 전달할 수 있습니다.

  • Array_Filter_use_key 또는 Array_Filter_use_Both 매개 변수를 사용하여 콜백 함수의 배열의 키와 값에 동시에 액세스 할 수도 있습니다.