我有一个干草堆是一个关联数组:
$array['header']['title'] = 'MyTitle';
$array['header']['subtitle'] = 'MySubtitle';
$array['body'] = 'MyBody';
我希望用“你的”替换每次出现的“我的” 我正在尝试这样的事情:
$new_array = str_replace('My', 'Your', $array);
可悲的是,它仅适用于第一级(即body
键)
有什么不对的吗?有解决方法吗?
答案 0 :(得分:4)
array_walk_recursive($array, 'replaceMy');
function replaceMy(&$item) {
str_replace('My', 'Your', $item);
}
答案 1 :(得分:3)
试试这个:array_walk_recursive
答案 2 :(得分:0)
如果您的关联数组未知,则必须使用递归方法来完成它并在值为字符串时进行替换。
否则,请使用更多来电:
$new_array = str_replace('My', 'Your', $array);
$new_array = str_replace('My', 'Your', $array['header']);