array_walk( )
函数是 PHP 的内置函数。它用于将用户提供的函数应用于数组的每个元素。该功能在 4.0 中引入。
通过该函数我们可以修改关联数组中的每个值。
语法
bool array_walk ( array &$array , callable $callback [, mixed $userdata = NULL ] );
参数
参数 | 描述 | 必须/可选 |
---|---|---|
array | 输入数组。 | 必须 |
callback | 用户定义函数的名称。 | 必须 |
userdata | 如果提供,它将作为第三个参数传递给用户函数 | 可选 |
返回值
array_walk( ) 函数在成功时返回 true,在失败时返回 false。
例子1
<?php
function userfunction($value, $key)
{
echo "The key $key has the value $value \n";
}
$tech = array("a"=>"baidu", "b"=>"taobao", "c"=>"sohu");
array_walk($tech, "userfunction");
?>
输出:
The key a has the value baidu
The key b has the value taobao
The key c has the value sohu
The key b has the value taobao
The key c has the value sohu
例2
通过引用传递修改元素的值。
<?php
function userfunction(&$value,$key)
{
$value="yxjc123.com";
}
$a = array("a"=>"baidu","b"=>"taobao","c"=>"sohu");
array_walk($a,"userfunction");
print_r($a);
?>
输出Array
(
[a] => yxjc123.com
[b] => yxjc123.com
[c] => yxjc123.com
)
(
[a] => yxjc123.com
[b] => yxjc123.com
[c] => yxjc123.com
)
由上面的结果可知,引用传递修改了关联数组的所有的元素值。