ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
# PHP array_walk_recursive() 函数 ## 定义和用法 与 [array_walk() 函数](/php/func_array_walk.asp "PHP array_walk() 函数") 类似,array_walk_recursive() 函数对数组中的每个元素应用回调函数。不一样的是,如果原数组中的元素也是数组,就会递归地调用回调函数,也就是说,会递归到更深层的数组中去。 典型情况下,_function_ 接受两个参数。_array_ 参数的值作为第一个,键名作为第二个。如果提供了可选参数 _userdata_ ,将被作为第三个参数传递给回调函数。 如果回调函数需要直接作用于数组中的值,可以将回调函数的第一个参数指定为引用,这样对这些单元的任何改变也将会改变原始数组本身。 ### 语法 ``` array_walk_recursive(array,function,userdata) ``` | 参数 | 描述 | | --- | --- | | array | 必需。规定数组。 | | function | 必需。用户自定义函数的名称。 | | userdata | 可选。用户输入的值,可作为回调函数的参数。 | ## 例子 ``` <?php function myfunction($value,$key) { echo "The key $key has the value $value<br />"; } $a1=array("a"=>"Cat","b"=>"Dog"); $a2=array($a1,"1"=>"Bird","2"=>"Horse"); array_walk_recursive($a2,"myfunction"); ?> ``` 输出: ``` The key a has the value Cat The key b has the value Dog The key 1 has the value Bird The key 2 has the value Horse ```