有这样一个需求:有一个字符串'abc',想把其中的'a'替换成'ab',其中的'b'替换成'cd',即最后得到'abcdc'。
发现怎么都不能实现,比如用'str_replace'
<?php$str = 'abc';var_dump(str_replace(['a', 'b'], ['ab', 'cd'], $str));
返回的结果是'acdcdc'。'str_replace'处理的过程好像是先把‘a’替换成'ab'得到'abbc',然后把'abbc'中的‘b’替换成'cd'得到'acdcdc',即整个过程是:'abc' -> 'abbc' -> 'acdcdc'。'preg_replace'也是同样的处理过程。
请问,如何实现'abc' -> 'abcdc'???
坐等高手,十分感谢
回复讨论(解决方案)
不要在一颗树上吊死,php 已提供了各种处理方式
$str = 'abc';echo strtr($str, array('a' => 'ab', 'b' => 'cd'));
abcdc
不要在一颗树上吊死,php 已提供了各种处理方式
$str = 'abc';echo strtr($str, array('a' => 'ab', 'b' => 'cd'));
abcdc
你看,我说什么来着,就说来CSDN问没错吧。
十分感谢
Stellungnahme:Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn