Json_encode decode str_replace

$search = array(’[a’, ‘[/a]’);
$replace = array(’<a’, ‘’);
$xml_array = json_decode(str_replace($search, $replace, json_encode($xml_array)));

kann mir jemand sagen, wieso der erste teil klappt, aber das zweite argument nicht??

grüße,
sebastian

Kannst du uns bitte nachvollziehbar beschreiben, was „klappt nicht“ in diesem Fall bedeuten soll? :roll:

na klar, sorry :wink:

also es wird bei einem array ($xml_array) nicht von [/a] in umgewandelt, was es meiner meinung nach tun sollte.

ich versuche ein mehrdimensionales array mit str_replace zu verändern.

grüße,
sebastian

Nun, dafür eigent sich so etwas viel besser:

array_walk_recursive($array, create_function('&$item,$key,&$data', 'if (is_string($item)) $item = str_replace($data[0], $data[1], $item);'), array(array('[a', '[/a]'), array('<a', '</a>')));

Und was soll JSON dabei …?

ich hab irgendwo mal gelesen, dass das schneller gehen soll.