如何将php指定的字符串替换?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
php将指定字符串替换的方法:1、【strtr】为转换指定字符,代码为【string strtr( string $str ,$replace_pairs )】;2、【str_replace()】函数以其他字符替换字符串中的一些字符。
php将指定字符串替换的方法:
在PHP中,有两个函数可以实现字符串替换,strtr()
和str_repalce()
函数。
一、首先我们简单了解下strtr()
函数的定义及语法。
strtr
:转换指定字符。
两个语法:
第一种语法:
string strtr( string $str, string $from, string $to)
第一个参数表示待转换的字符串。第二个参数表示字符串中与将要被转换的目的字符 to 相对应的源字符。第三个参数表示字符串中与将要被转换的字符 from 相对应的目的字符。
第二种语法:
string strtr( string $str , array $replace_pairs )
第一个参数表示待转换的字符串。第二个参数表示以数组键值形式替换指定字符串。
下面我们就结合两个简单的代码示例为大家详细介绍其中最为常用的strtr()函数用法及使用技巧。
PHP中strtr
函数替换字符串示例一:
<?php $str = "亿速云"; echo strtr($str, 'P', 'A') . '<br>'; echo strtr($str, 'PP', 'z1') . '<br>'; echo strtr($str, 'P', ' ') . '<br>'; echo strtr($str, 'PH', '12') . '<br>'; echo "<hr>"; ?>
通过浏览器访问,结果如下图:
大家可以结合代码和返回值来了解strtr
函数这种语法替换字符串的规则。
这里有的朋友可能对第二行“PP”替换“z1”的结果有些疑惑,这是因为如果要转换两个相同的目的字符,那么是以最后一个字符的值为标准。由于这里最后一个“P”对应的是“1”,所以替换结果就从“亿速云”转换为“....中文网”。
第三行显示则是替换空格符的结果,也是非常容易理解的。其余情况替换对应的字符即可。
PHP中strtr
函数替换字符串示例二:
<?php $str = "亿速云"; echo strtr($str, array("中" => '')) . '<br>'; echo strtr($str, array("中" => '.', "文网" => "cn")) . '<br>'; echo "<hr>"; ?>
通过浏览器访问,结果如下图:
如图使用PHP中strtr函数也可以实现中文字符串替换。
本篇文章就是关于PHP替换指定字符串的具体方法介绍,使用strtr函数不仅可以实现多个字符串替换还能实现中文字符串替换等。
二、str_replace()
函数以其他字符替换字符串中的一些字符(区分大小写)。
该函数必须遵循下列规则:
如果搜索的字符串是数组,那么它将返回数组。
如果搜索的字符串是数组,那么它将对数组中的每个元素进行查找和替换。
如果同时需要对数组进行查找和替换,并且需要执行替换的元素少于查找到的元素的数量,那么多余元素将用空字符串进行替换
如果查找的是数组,而替换的是字符串,那么替代字符串将对所有查找到的值起作用。
注释:该函数区分大小写。请使用str_ireplace()
函数执行不区分大小写的搜索。
注释:该函数是二进制安全的。
<?php $arr = array("blue","red","green","yellow"); print_r(str_replace("red","pink",$arr,$i)); echo "替换数:$i"; ?>
<?php $find = array("Hello","world"); $replace = array("B"); $arr = array("Hello","world","!"); print_r(str_replace($find,$replace,$arr)); ?>
看完上述内容,你们掌握如何将php指定的字符串替换的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。