首页  >  文章  >  后端开发  >  PHP替换字符串函数实例解析

PHP替换字符串函数实例解析

伊谢尔伦
伊谢尔伦原创
2017-04-15 09:06:342927浏览

通过字符串的替换技术可以实现对指定字符串中的指定字符进行替换。字符串的替换技术可以通过一下的两个函数实现: str_irplace()函数和substr_replace()函数。

str_irplace()函数

使用新的字符串(子串)替换原始字符串中被指定的要替换的字符串。

其语法格式如下:

str_irplace(search, replace, subject, count)

说明: 将所有在参数 subject中出现的参数subject 以参数 replace取代,参数 count 表示取代字符串执行的次数。str_irplace()函数是不区分大小写的。

参    数 说     明
search 必要参数,指定需要查找的字符串
replace 必要参数,指定需要替换的值
subject 必要参数,指定需要查找的范围
count 可选参数,获取执行替换的次数

将文本指定的字符串替换掉,然后在输出替换后的结果,实例代码如下:

<?php
$str = "看国足打比赛就像单恋一个不爱你的人,Ta稍微给你一点好脸色,你就以为有戏了。";
$str1 = "**";
$str2 = "国足";
echo str_ireplace($str2,$str1,$str);    //输出替换后的字符串
?>

输出结果为:看**打比赛就像单恋一个不爱你的人,Ta稍微给你一点好脸色,你就以为有戏了。

注意:该函数在执行替换的操作时是不区分大小写的,如果需要对大小写加以区分,可以使用str_replace()函数。

字符串替换技术最常用的就是在搜索引擎的关键字处理中,可以使用字符串替换技术将搜索到的字符串的关键字替换颜色,如查询关键字标红功能,使搜索到的结果更便于用户查看。

注意:查询关键字标红是指将查询关键字以特殊的颜色、字号或字体进行标识,这样可以使浏览者快速查询到所需要的关键字,方便浏览者从搜索结果中查找所需内容。查询关键字标红适用于模糊查询。

下面通过一个具体的实例来介绍如何实现查询关键字的标红功能。

使用 str_irplace()函数替换查询关键字,当显示所查询的相关信息时,将输出的关键字的字体替换为红色。示例代码如下所示:

<?php
$content = "看国足打比赛就像单恋一个不爱你的人,Ta稍微给你一点好脸色,你就以为有戏了";
$str = "国足";
echo str_ireplace($str,"<font color=&#39;red&#39;>$str</font>",$content);    //替换字符串为红色字体
?>

输出结果为:国足打比赛就像单恋一个不爱你的人,Ta稍微给你一点好脸色,你就以为有戏了

注意:查询关键字标红功能在搜索引擎中被广泛的应用,希望朋友们通过实例学习,能够举一反三,从而开发出更灵活、便捷的程序。

substr_replace()函数

对指定的字符串中的部分字符串进行替换。

其语法格式如下的形式:

substr_replace(string, replacement, start, length)

其参数说明如下:

参    数 说     明
string 指定需要操作的原始字符串
replacement 指定替换后的新字符串
start 指定替换字符串的起始位置
length 可选参数,指定替换的字符串长度

说明:start参数为正数表示起始位置从字符串开头开始;负数表示起始位置从字符串的结尾开始; 0表示起始位置字符串中的第一个字符。

length参数默认值是整个字符串。正数表示起始位置从字符串开头开始;负数表示起始位置从字符串的结尾开始;0表示插入而非替代。

注意: 如果start参数设置为负数,而参数length数值小于或者等于start参数,那么length值自动为0。

使用substr_replace()函数对指定字符串进行替换,示例如下所示:

<?php
$str = "用今日的努力工作,换明日的双倍回报!";
$replace = "十倍";                               //定义要替换的字符串
echo substr_replace($str,$replace,39,6);         //替换字符串
?>

输出结果为:用今日的努力工作,换明日的十倍回报!

说明:在上面的代码中,主要是用substr_replace()函数实现将字符串 “双倍” 替换为字符串 “十倍”。

以上是PHP替换字符串函数实例解析的详细内容。更多信息请关注PHP中文网其他相关文章!

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