Php/docs/function.array-walk-recursive

来自菜鸟教程
跳转至:导航、​搜索

array_walk_recursive

(PHP 5, PHP 7)

array_walk_recursive对数组中的每个成员递归地应用用户函数


说明

array_walk_recursive ( array &$array , callable $callback [, mixed $userdata = null ] ) : bool

将用户自定义函数 callback 应用到 array 数组中的每个单元。本函数会递归到更深层的数组中去。


参数

array

输入的数组。

callback

典型情况下 callback 接受两个参数。array 参数的值作为第一个,键名作为第二个。

Note:

如果 callback 需要直接作用于数组中的值,则给 callback 的第一个参数指定为引用。这样任何对这些单元的改变也将会改变原始数组本身。

userdata

如果提供了可选参数 userdata,将被作为第三个参数传递给 callback


返回值

成功时返回 true, 或者在失败时返回 false


范例

Example #1 array_walk_recursive() 例子

<?php$sweet = array('a' => 'apple', 'b' => 'banana');$fruits = array('sweet' => $sweet, 'sour' => 'lemon');function test_print($item, $key){    echo "$key holds $item\n";}array_walk_recursive($fruits, 'test_print');?>

以上例程会输出:


a holds apple
b holds banana
sour holds lemon

注意上例中的键 'sweet' 并没有显示出来。任何其值为 array 的键都不会被传递到回调函数中去。


参见

  • array_walk() - 使用用户自定义函数对数组中的每个元素做回调处理