PHP array_walk() 函数
PHP array_walk() 函数对数组中的每个元素应用用户自定义函数
( PHP >= 4 )
函数原型
array_walk( array,myfunction,parameter... )
在函数中,数组的键名和键值是参数
以通过把用户自定义函数中的第一个参数指定为引用:&$value,来改变数组元素的值
如需操作更深的数组(一个数组中包含另一个数组),可以使用 array_walk_recursive() 函数
参数
参数 | 描述 |
---|---|
array | 必需。规定数组 |
myfunction | 必需。用户自定义函数的名称 |
parameter,... | 可选。规定用户自定义函数的参数,可以为函数设置一个或多个参数 |
返回值
如果成功则返回 TRUE,否则返回 FALSE
范例
对数组中的每个元素应用用户自定义函数
<?php function myfunction($value,$key) { echo "$key => $value<br>"; } $a=array("a"=>"red","b"=>"green","c"=>"blue"); array_walk($a,"myfunction");
运行以上 PHP 范例,输出结果如下
a => red b => green c => blue
范例 2
带有一个参数
<?php function myfunction($value,$key,$p) { echo "$key $p $value<br>"; } $a=array("a"=>"red","b"=>"green","c"=>"blue"); array_walk($a,"myfunction"," => ");?>
运行以上 PHP 范例,输出结果如下
a => red b => green c => blue
范例 3
改变数组元素的值(请注意 &$value)
<?php function myfunction(&$value,$key) { $value="yellow"; } $a=array("a"=>"red","b"=>"green","c"=>"blue"); array_walk($a,"myfunction"); print_r($a);
运行以上 PHP 范例,输出结果如下
Array ( [a] => yellow [b] => yellow [c] => yellow )