search
Homephp教程php手册PHP字符串替换的相关方法介绍

PHP字符串替换的相关方法介绍

Jun 13, 2016 am 11:07 AM
phpintroduceFunctionexiststringaccomplishactualusmethodhourreplaceofRelatedprogramming

我们在实际编程中,当想实现字符串替换这一功能时,通常都会用到strtr()函数。下面我们就来具体讲解一下PHP字符串替换的是实现方法。

v先来看看这个PHP字符串替换函数 strtr()的两种状态

strtr(string,from,to)
或者strtr(string,array)

首先针对strtr函数第一种方式
我们看看下面的PHP字符串替换举例:

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

得到的结果是

I lOve yOu

这个结果提醒我们

1.strtr它是区分大小写的
2.strtr的替换是很特殊的,你注意看后面那个yOu,中间的O被替换的,这显然不是我们的本意

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

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

结果是

I Love you

PHP字符串替换什么也不会改变,所以strtr需要注意的是:

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

再次举例strtr函数的另一种情况

<ol class="dp-xml">
<li class="alt"><span><span class="tag"><span class="tag-name">php</span><span> </span></span></span></li>
<li><span>echo strtr("I Loves you","Love","lOvEA");  </span></li>
<li class="alt">
<span class="tag">?></span><span>   </span>
</li>
</ol>

结果是

I lOvEs yOu

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

4.我不建议用strtr以少换多

ok,既然这个strtr函数挺麻烦为什么还要用呢?
原因是,它的速度很快
据说,strtr 比 str_replace 快四倍

5.PHP字符串替换能用strtr函数的时候一定要用

那怎么用才舒服?
这就是它的第二种情况
strtr(string,array)

6.strtr符合意愿的使用方法

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

结果为
I Love her sister

7.小技巧:你想到PHP字符串替换该替换什么你就往数组加什么

比如

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

结果是

I hate her sister

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

ok,乱七八糟说了一通,其实关于strtr最想说的就是这个后面的用法了
简单方便。
貌似后面的用法也忽略掉了前后字符长度不同的问题

以上PHP字符串替换实验,PHP5.2 测试通过。


Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

SecLists

SecLists

SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

PhpStorm Mac version

PhpStorm Mac version

The latest (2018.2.1) professional PHP integrated development tool

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

SublimeText3 Linux new version

SublimeText3 Linux new version

SublimeText3 Linux latest version