>  기사  >  백엔드 개발  >  배열의 각 요소에 사용자 정의 함수를 적용하는 php array_walk에 대한 자세한 설명

배열의 각 요소에 사용자 정의 함수를 적용하는 php array_walk에 대한 자세한 설명

高洛峰
高洛峰원래의
2016-12-12 10:17:221391검색

php array_walk는 배열의 각 요소에 사용자 정의 함수를 적용합니다

array_walk는 사용자 정의 함수를 사용하여 배열의 각 요소에 대해 콜백 처리를 수행합니다

기본 구문

bool array_walk ( array &$array , callable $funcname [, Mixed $userdata = NULL ] )

배열의 각 셀에 사용자 정의 함수 funcname을 적용합니다.

array_walk()는 배열 내부 배열 포인터의 영향을 받지 않습니다. array_walk()는 포인터의 위치에 관계없이 전체 배열을 탐색합니다.

매개변수 소개:

배열의 각 요소에 사용자 정의 함수를 적용하는 php array_walk에 대한 자세한 설명

설명:

1. array_walk() 함수는 배열의 각 요소에 콜백 함수를 적용합니다. 성공하면 TRUE를 반환하고 그렇지 않으면 FALSE를 반환합니다.

2. 일반적으로 funname은 두 개의 매개변수를 허용합니다. 배열 매개변수의 값이 첫 번째로 사용되고, 키 이름이 두 번째로 사용됩니다. 선택적 매개변수인 userdata가 제공되면 콜백 함수에 세 번째 매개변수로 전달됩니다.

3. funname 함수에 지정된 것보다 더 많은 매개변수가 필요한 경우 array_walk()가 funname을 호출할 때마다 E_WARNING 수준 오류가 생성됩니다. 이러한 경고는 PHP의 오류 연산자 @를 사용하여 array_walk() 호출을 수행하거나 error_reporting()을 사용하여 억제할 수 있습니다.

4. 콜백 함수가 배열의 값에 직접 작용해야 하는 경우 콜백 함수의 첫 번째 매개변수를 참조로 지정할 수 있습니다.

반환 값

성공 시 TRUE, 실패 시 FALSE를 반환합니다.

인스턴스:

<?php
$fruits = array(
  "d" => "lemon",
  "a" => "orange",
  "b" => "banana",
  "c" => "apple"
);
function test_alter(&$item1, $key, $prefix) {
  $item1 = " $prefix : $item1 ";
}
function test_print($item2, $key) {
  echo " $key . $item2 <br />";
}
echo "Before ...:<br />";
array_walk($fruits, &#39;test_print&#39;);
array_walk($fruits, &#39;test_alter&#39;, &#39;fruit&#39;);
echo "... and after:<br />";
array_walk($fruits, &#39;test_print&#39;);
?>

실행 결과:

...전:
d 레몬
a . 오렌지
b . 바나나
c . 사과
... 그리고 다음:
d . 과일: 레몬
b .
c .과일 : 사과


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