PHP替换字符串函数strtr()

strtr(string,from,to)

逐个字符开始替换,以from跟to中长度较较短的一个为准,例如:

// 琼台博客 www.qttc.net

echo strtr("aidenliu", "ai", "b");
// Output: bidenliu
// 琼台博客 www.qttc.net

echo strtr("aidenliu", "a", "bc");
// Output: bidenliu

此函数是大小写敏感的,具如果发生多次替换,每一次替换的蓝本都是最原始的那个字符串,而不是在前一次替换的基础上替换,如

// 琼台博客 www.qttc.net

echo strtr("aidenliu","aA","A@");
// Output: Aidenliu
// 琼台博客 www.qttc.net

$arr = array("1" => "A","2" => "B","3" => "C","B" => "D");
$word = "ZBB2";
echo strtr($word,$arr);
// Output: ZDDB

strtr(string,array)

array 为关联数组,用关联数组中的值替换原始字符串中出现的对应的键,如果发生多次替换,每次替换的对像都是最原始的那个字符串,而不是在一次替换的基础上替换(此点与str_replace不同)

区别:

strtr(string,from,to)是逐个字符替换,而strtr(string,array)是字符串替换
strtr("aidenliu","ai","") 不发生替换(第二个参数为零长度字符串)
strtr("aidenliu",array("ai"=>"")) 发生替换

分享

TITLE: PHP替换字符串函数strtr()

LINK: https://www.qttc.net/24-php-strtr.html

NOTE: 原创内容,转载请注明出自琼台博客