Hello guys :-)
I have a question. I have been using str_replace() quite a lot of times,
and never encountered any issue. But this time, something weird happened,
and I am wondering wether, in fact, I have never really understood how
this function worked, or if there is some kind of bug.
If I do that :
<?php
$test = 'bla';
$un = array ('b', 'l', 'a');
$deux = array ('c', 'd', 'e');
$test = str_replace ($un, $deux, $test);
echo $test , '<br />';
?>
No prob, the output is the one I would have expected : cde
But if I do that :
<?php
$texte = 'cd' ;
$original = array('a', 'b', 'c', 'd', 'e', 'f', 'g');
$modif = array ('c', 'd', 'e', 'f', 'g', 'h', 'i');
$texte = str_replace($original, $modif, $texte) ;
echo $texte, ' <br />' ;
?>
The result is : ih
Why ?
It seems to me that str_replace is messing up a litlle bit if there are
identical values in both replacement and search arrays.
Or am I missing something ?
Thanks a lot :-)
Johan