(PHP 3>= 3.0.3, PHP 4 >= 4.0.0)
array_walk --
配列の各メンバーにユーザー関数を適用する。
説明
int array_walk
(array arr, string func, mixed userdata)
arrの各要素にfunc
という名前の関数を適用します。
funcには、配列の値が最初の引数として
渡され、配列のキーが2番目のパラメータとして渡されます。
userdataが指定された場合、3番目の引数として
ユーザー関数に渡されます。
funcが2つまたは3つを超える引数を必要とする場合、
userdataの指定によっては、
array_walk()がfunc
をコールする度に警告が生成されます。
これらの警告は、array_walk()の前に
'@'マークを付けるか
error_reporting()を使用することにより
抑制されます。
注意
funcにより配列の値そのものを変更する必要
がある場合、funcの最初の引数は参照として
渡す必要があります。この場合、配列の要素に加えた変更は、配列自体
に対して行われます。
注意
キー及びuserdataをfuncに渡す処理は、
バージョン 4.0で追加されました。
PHP 4では、array_walk()で配列のリセットがデフォ
ルトで行われないため、reset()をコールする必要
があります。
例 1array_walk()の例
$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>\n";
}
array_walk ($fruits, 'test_print');
reset ($fruits);
array_walk ($fruits, 'test_alter', 'fruit');
reset ($fruits);
array_walk ($fruits, 'test_print');
|
|
each()およびlist()
も参照下さい。