PHP array_walk() 함수

예제

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

<?php
function myfunction($value,$key)
{
echo "The key $key has the value $value<br>";
}
$a=array("a"=>"red","b"=>"green","c"=>"blue");
array_walk($a,"myfunction");
?>

실행 예제

정의와 사용법

array_walk() 함수는 배열의 각 요소에 사용자 정의 함수를 적용합니다. 함수 내에서 배열의 키 이름과 키 값은 인자로 사용됩니다。

주의사항:사용자 정의 함수의 첫 번째 인자를 참조로 지정하여 배열 요소의 값을 변경할 수 있습니다. (예제 2 참조): &$value

추가 정보:更深层次的 배열(배열 내에 배열이 포함된 경우)을 처리하려면 다음을 사용하십시오: array_walk_recursive() 함수.

문법

array_walk(array,myfunction,userdata...)
인자 설명
array 필수입니다. 배열을 지정합니다。
myfunction 필수입니다. 사용자 정의 함수의 이름입니다。
userdata,... 선택적입니다. 사용자 정의 함수의 인자를 지정합니다. 이 함수에 어떤 인자를 전달하든 됩니다。

설명

array_walk() 함수는 배열의 각 요소에 콜백 함수를 적용합니다. 성공하면 TRUE를 반환하며, 실패하면 FALSE를 반환합니다。

표준적인 경우 myfunction 두 개의 인자를 받아들입니다。array 인자의 값은 첫 번째, 키 이름은 두 번째로 사용됩니다。 선택적 인자가 제공되면 userdata 콜백 함수에 세 번째 인자로 전달될 것입니다。

만약 myfunction 가 필요한 매개변수가 주어진 매개변수보다 많을 경우, 각 array_walk() 호출마다 myfunction 발생할 때마다 E_WARNING 레벨의 오류가 발생합니다. 이 경고는 array_walk() 호출 전에 PHP의 오류 처리 연산자 @를 추가하여 억제하거나 error_reporting()를 사용하여 억제할 수 있습니다。

주의사항:回调 함수가 배열 내의 값을 직접 작용해야 한다면,回调 함수의 첫 번째 매개변수를 참조로 지정할 수 있습니다:&$value。(예제 3을 참조하세요)

주의사항:키 이름과 userdata 전달됩니다 myfunction 는 PHP 4.0에서 새로 추가된 것입니다.

기술 세부 사항

반환 값: 성공하면 TRUE를 반환하며, 실패하면 FALSE를 반환합니다。
PHP 버전: 4+

더 많은 예제

예제 1

하나의 매개변수를 설정합니다:

<?php
function myfunction($value,$key,$p)
{
echo "$key $p $value<br>";
}
$a=array("a"=>"red","b"=>"green","c"=>"blue");
array_walk($a,"myfunction","has the value");
?>

실행 예제

예제 2

배열 요소의 값을 변경합니다. (请注意 &$value):

<?php
function myfunction(&$value,$key)
{
$value="yellow";
}
$a=array("a"=>"red","b"=>"green","c"=>"blue");
array_walk($a,"myfunction");
print_r($a);
?>

실행 예제