Heim >php教程 >php手册 >PHP字符串替换函数strtr()的功能实现讲解

PHP字符串替换函数strtr()的功能实现讲解

WBOY
WBOYOriginal
2016-06-13 11:07:051038Durchsuche

我们今天要向大家讲的内容是有关先来看看这个php字符串替换函数 PHP字符串替换函数strtr()的两种状态

strtr(string,from,to)

或者strtr(string,array)

首先针对PHP字符串替换函数strtr()第一种方式

我们看看下面的举例:

<ol class="dp-xml">
<li class="alt"><span><strong><font color="#006699"><span class="tag"></span><span class="tag-name">php</span></font></strong><span> </span></span></li>
<li class=""><span>echo strtr("I Love you","Lo","lO");  </span></li>
<li class="alt">
<span></span><span class="tag"><strong><font color="#006699">?></font></strong></span><span> </span>
</li>
</ol>

得到的结果是

I lOve yOu

这个结果提醒我们

1.strtr它是区分大小写的

2.PHP字符串替换函数strtr()的替换是很特殊的,你注意看后面那个yOu,中间的O被替换的,这显然不是我们的本意

再举一个特殊例子,说明这个php sttr函数的怪异

<ol class="dp-xml">
<li class="alt"><span><strong><font color="#006699"><span class="tag"></span><span class="tag-name">php</span></font></strong><span> </span></span></li>
<li class=""><span>echo strtr("I Love you","Love","");  </span></li>
<li class="alt">
<span></span><span class="tag"><strong><font color="#006699">?></font></strong></span><span> </span>
</li>
</ol>

结果是

I Love you

什么也不会改变,所以strtr需要注意的是:

3.不能被替换为空,也就是末位那个参数不能是空字符串,当然空格是可以的。

再次举例PHP字符串替换函数strtr()的另一种情况

<ol class="dp-xml">
<li class="alt"><span><span class="tag"><strong><font color="#006699"></font></strong></span><span>,balencigag handbag;?php  </span></span></li>
<li class=""><span>echo strtr("I Loves you","Love","lOvEA");  </span></li>
<li class="alt">
<span></span><span class="tag"><strong><font color="#006699">?></font></strong></span><span> </span>
</li>
</ol>

结果是

I lOvEs yOu

注意看第三个参数的A,在结果中并没有出现

4.我不建议用PHP字符串替换函数strtr()以少换多

ok,既然这个strtr函数挺麻烦为什么还要用呢?

原因是,它的速度很快

据说,strtr 比 str_replace 快四倍

5.能用strtr函数的时候一定要用

那怎么用才舒服?

这就是它的第二种情况

strtr(string,array)

6.PHP字符串替换函数strtr()符合意愿的使用方法

<ol class="dp-xml">
<li class="alt"><span><strong><font color="#006699"><span class="tag"></span><span class="tag-name">php</span></font></strong><span> </span></span></li>
<li class="">
<span>$</span><span class="attribute"><font color="#ff0000">table_change</font></span><span> = </span><span class="attribute-value"><font color="#0000ff">array</font></span><span>('you'=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>'her sister');  </span>
</li>
<li class="alt"><span>echo strtr("I Love you",$table_change);  </span></li>
<li class="">
<span></span><span class="tag"><strong><font color="#006699">?></font></strong></span><span> </span>
</li>
</ol>

结果为

I Love her sister

7.小技巧:你想到替换什么你就往数组加什么

<ol class="dp-xml">
<li class="alt"><span><strong><font color="#006699"><span class="tag"></span><span class="tag-name">php</span></font></strong><span> </span></span></li>
<li class="">
<span>$</span><span class="attribute"><font color="#ff0000">table_change</font></span><span> = </span><span class="attribute-value"><font color="#0000ff">array</font></span><span>('you'=</span><span class="tag"><strong><font color="#006699">></font></strong></span><span>'her sister');  </span>
</li>
<li class="alt">
<span>$table_change += array('Love' =</span><span class="tag"><strong><font color="#006699">></font></strong></span><span> 'hate');  </span>
</li>
<li class=""><span>echo strtr("I Love you",$table_change);  </span></li>
<li class="alt">
<span></span><span class="tag"><strong><font color="#006699">?></font></strong></span><span> </span>
</li>
</ol>

结果是

I hate her sister

再次提醒那个Love 写成love 是行不通的哦。

ok,乱七八糟说了一通,其实关于strtr最想说的就是这个后面的用法了

简单方便。

貌似后面的用法也忽略掉了前后字符长度不同的问题

以上PHP字符串替换函数strtr()实验,PHP5.2 测试通过。


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