Php str_替换为主题作为关联数组
我有一个干草堆,它是一个关联数组:Php str_替换为主题作为关联数组,php,php-5.2,Php,Php 5.2,我有一个干草堆,它是一个关联数组: $array['header']['title'] = 'MyTitle'; $array['header']['subtitle'] = 'MySubtitle'; $array['body'] = 'MyBody'; 我希望将每次出现的“My”替换为“Your”。 我正在尝试这样的事情: $new_array = str_replace('My', 'Your', $array); 遗憾的是,它只在第一级(即bodykey)起作用。 有什么问题吗?是否
$array['header']['title'] = 'MyTitle';
$array['header']['subtitle'] = 'MySubtitle';
$array['body'] = 'MyBody';
我希望将每次出现的“My”替换为“Your”。我正在尝试这样的事情:
$new_array = str_replace('My', 'Your', $array);
遗憾的是,它只在第一级(即body
key)起作用。有什么问题吗?是否有解决方法?如果关联数组未知,则必须使用递归方法遍历该数组,并在值为字符串时进行替换 否则,请使用更多呼叫:
$new_array = str_replace('My', 'Your', $array);
$new_array = str_replace('My', 'Your', $array['header']);
试试这个:
array_walk_recursive($array, 'replaceMy');
function replaceMy(&$item) {
str_replace('My', 'Your', $item);
}