使用array_walk调用匿名函数

32
有没有办法让我的匿名函数在遍历数组时设置值?
$url = array('dog', 'cat', 'fish');

array_walk($url, function(&$value, &$key) {
    $url[$key] = str_replace('dog', '', $value);
});

echo '<pre>';
print_r($url);
echo '</pre>';
1个回答

69

你已经使用引用传递方式传递了值,只需按照以下步骤操作:

array_walk($url, function(&$value, &$key) {
    $value = str_replace('dog', '', $value);
});

1
谢谢你!就是这样 :) 我会在7分钟内确认并标记为已解决! - JREAM
4
请记住,使用array_walk时无法通过引用传递$key。只有$value可以通过引用进行修改。如果尝试修改$key,PHP不会抛出错误,但也不会对数组产生任何影响。 - Nathan F.

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接