> 백엔드 개발 > PHP 튜토리얼 > array_map, array_walk, array_filter 중 어떤 PHP 배열 함수가 귀하에게 적합합니까?

array_map, array_walk, array_filter 중 어떤 PHP 배열 함수가 귀하에게 적합합니까?

Linda Hamilton
풀어 주다: 2024-10-29 07:09:30
원래의
671명이 탐색했습니다.

Which PHP Array Function is Right for You: array_map, array_walk, or array_filter?

array_map, array_walk, array_filter의 차이점 이해

PHP에서는 이 세 가지 함수를 배열 조작에 흔히 사용합니다. 콜백 함수 활용에 있어 유사점을 공유하지만 구체적인 동작이 다릅니다.

array_map:

  • 원래 배열을 수정할 수 없습니다.
  • 단일 배열을 반복합니다.
  • 변환된 값으로 새 배열을 반환합니다.
  • 배열의 각 요소에 특정 연산을 적용하는 데 유용합니다.

array_walk:

  • 원래 배열을 수정할 수 있습니다.
  • 단일 배열에 대해 반복합니다.
  • true만 반환합니다.
  • 배열 키에 액세스하거나 요소 값을 변경해야 하는 작업을 수행하는 데 유용합니다.

array_filter:

  • 조건자 함수를 기반으로 배열을 필터링합니다.
  • 배열 키를 유지합니다.
  • 필터 조건을 만족하는 요소만 포함된 새 배열을 반환합니다.

주요 차이점:

차이점을 설명하기 위해 다음 예를 고려해 보겠습니다.

<code class="php">$numbers = [2.4, 2.6, 3.5];

$map_result = array_map('floor', $numbers); // Round down each element
$walk_result = array_walk($numbers, function (&$v, $k) { $v = floor($v); }); // Round down each element in-place
$filter_result = array_filter($numbers, function ($a) { return $a > 2.5; }); // Filter out elements less than 2.5</code>
로그인 후 복사

출력:

  • map_result: [2, 2, 3]
  • walk_result: true(반환 값 없음)
  • filter_result: [2.6, 3.5]

보시다시피 array_map은 새로운 변환된 배열을 생성하는 반면 array_walk는 원본 배열을 직접 수정합니다. array_filter는 제공된 조건을 기반으로 원래 배열의 하위 집합을 반환합니다.

결론적으로 array_map, array_walk 및 array_filter는 유사점을 공유하지만 기능이 다르며 다양한 사용 사례에 가장 적합합니다. 적절한 기능을 선택하는 것은 현재 작업의 특정 요구 사항에 따라 다릅니다.

위 내용은 array_map, array_walk, array_filter 중 어떤 PHP 배열 함수가 귀하에게 적합합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿