首页  >  文章  >  后端开发  >  php如何将指定字符串替换?

php如何将指定字符串替换?

coldplay.xixi
coldplay.xixi原创
2020-07-11 13:35:4412459浏览

php将指定字符串替换的方法:1、【strtr】为转换指定字符,代码为【string strtr( string $str ,$replace_pairs )】;2、【str_replace()】函数以其他字符替换字符串中的一些字符。

php如何将指定字符串替换?

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 = "PHP中文网";
echo strtr($str, &#39;P&#39;, &#39;A&#39;) . &#39;<br>&#39;;
echo strtr($str, &#39;PP&#39;, &#39;z1&#39;) . &#39;<br>&#39;;
echo strtr($str, &#39;P&#39;, &#39; &#39;) . &#39;<br>&#39;;
echo strtr($str, &#39;PH&#39;, &#39;12&#39;) . &#39;<br>&#39;;
echo "<hr>";
?>

通过浏览器访问,结果如下图:

10b3b9c9f2c8303892d401911bf9bc4.png

大家可以结合代码和返回值来了解strtr函数这种语法替换字符串的规则。

这里有的朋友可能对第二行“PP”替换“z1”的结果有些疑惑,这是因为如果要转换两个相同的目的字符,那么是以最后一个字符的值为标准。由于这里最后一个“P”对应的是“1”,所以替换结果就从“PHP中文网”转换为“....中文网”。

第三行显示则是替换空格符的结果,也是非常容易理解的。其余情况替换对应的字符即可。

PHP中strtr函数替换字符串示例二:

<?php
$str = "PHP中文网";
echo strtr($str, array("中" => &#39;&#39;)) . &#39;<br>&#39;;
echo strtr($str, array("中" => &#39;.&#39;, "文网" => "cn")) . &#39;<br>&#39;;
echo "<hr>";
?>

通过浏览器访问,结果如下图:

c5ce517079af09c9f48eafa0c3eab38.png

如图使用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";
?>

 f5bb537401ca464ad6db8cbaa6af203.png

<?php
$find = array("Hello","world");
$replace = array("B");
$arr = array("Hello","world","!");
print_r(str_replace($find,$replace,$arr));
?>

0393b02063533facc60caaeb9a19131.png

相关学习推荐:PHP编程从入门到精通

以上是php如何将指定字符串替换?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn