PHP中的字符串替换函数str_replace和strtr

1. PHP字符串替换函数 strtr 和 str_replace 的用法

语法说明:
string strtr ( string $str , string $from , string $to )
string strtr ( string $str , array $replace_pairs )
mixed str_replace ( mixed $search , mixed $replace , mixed $subject [, int &$count ] )

用法举例:
$str1 = strtr($input, 'red', 'blue'); // 将 red 替换成 blue
$str2 = strtr($input, array('red'=>'blue','white'=>'black')); // 将 red 替换成 blue,同时将 white 替换成 black
$str3 = str_replace('yellow', 'green', $input); // 将 yellow 替换成 green


2. 两个函数的比较
strtr():函数转换字符串中特定的字符。
str_replace():函数以其他字符替换字符串中的一些字符(区分大小写)。

从两个函数的定义,我们可以知道:strtr 是转换,str_replace 是替换。

从用法上讲,替换子字符串数量少的话,strtr 写起来会复杂一点。

从效率上讲,strtr 会比 str_replace 快很多。



3. 其他字符串替换函数相关

函数 str_replace 的大小写不敏感函数:
mixed str_ireplace ( mixed $search , mixed $replace , mixed $subject [, int &$count ] )

正则替换函数:
mixed preg_replace ( mixed $pattern , mixed $replacement , mixed $subject [, int $limit ] )


2