页次: 1
array_walk_recursive 对数组中的每一个元素,递归的调用用户函数。
示例
$arr = array(1, 2, 3, array(4, 5)); array_walk_recursive($arr, function (&$x) { $x = $x*$x ;} ); var_dump($arr);
输出的结果
array (size=4) 0 => int 1 1 => int 4 2 => int 9 3 => array (size=2) 0 => int 16 1 => int 25
函数的原型是
bool array_walk_recursive ( array &$input , callable $funcname [, mixed $userdata = NULL ] )
示例中 函数 function (&$x) ... 使用了 引用, 结果就直接返回到了原来的数组中。
两个参数的例子
$arr = array("name" => "zhangs", "email" => "email@email.email"); function f ($a, $b ) { echo $a . " : " .$b . "</br>"; } array_walk_recursive($arr,'f' );
可以看到默认的第一个参数是值, 第二是名
可以使用,三个参数
<?php $array = array('a'=>1, 'b'=>2, 'c'=>4); function g($a, $b , $c) { echo "$a:$b:$c<br/>"; } array_walk_recursive($array , 'g', 1);
输出
1:a:1 2:b:1 4:c:1
ipbbs.net
离线
页次: 1