php strtr字符串替换方法
strtr方法
strtr(string,from,to)或strtr(string,array)
例1,针对strtr函数方式一。
复制代码 代码示例:
<?php
echo strtr("I Love you","Lo","lO");
?>
输出结果:
1 I lOve yOu
说明:
1、strtr区分大小写
2、strtr替换,注意看后面那个yOu,中间的O被替换的。
来看一个特殊例子,说明这个php sttr函数的怪异。
例子:
复制代码 代码示例:
<?php
echo strtr("I Love you","Love","");
?>
输出结果:
I Love you
注意,不能被替换为空,末位那个参数不能是空字符串,当然空格是可以的,再次举例strtr函数的另一种情况。
代码:
复制代码 代码示例:
<?php
echo strtr("I Loves you","Love","lOvEA");
?>
运行结果:
1 I lOvEs yOu
注意,第三个参数的A,在结果中并未出现。
不建议用strtr以少换多。
此函数速度很快,strtr 比 str_replace 快四倍,可以用strtr函数时一定要用。
第二种情况,strtr(string,array)
例子,strtr函数用法:
复制代码 代码示例:
<?php
$table_change = array('you'=>'her sister');
echo strtr("I Love you",$table_change);
?>
输出结果:
I Love her sister
例3,小技巧,需要替换什么就往数组加什么。
复制代码 代码示例:
<?php
$table_change = array('you'=>'her sister');
$table_change += array('Love' => 'hate');
echo strtr("I Love you",$table_change);
?>
输出结果:
I hate her sister
再次提醒那个Love 写成love 是行不通的。
以上php strtr函数实验,PHP5.2 测试通过。
例1:
复制代码 代码示例:
<?php
//输出为baicai而不是bai123cai,因为str("pao")<strlen("bai123")
echo strtr("paocai!","pao","bai123");
?>
例2,当被替换的值长度小于被替换目标时。
复制代码 代码示例:
<?php
//输出为laocai而不是lacai,因为str("pao")>strlen("la")
echo strtr("paocai!","pao","la");
?>
例3,支持数组替换。
复制代码 代码示例:
<?php
$Arr=array('ao'=>'oa','ai'=>'ia');
echo strtr("paocai!",$Arr); //输出的为poacia
?>
其次是str_replace,例如:
复制代码 代码示例:
<?php
echo str_replace("you","paocai","I love you!"); //输出I love paocai!
?>