php关键字仅替换一次的实现函数
2019/6/30 15:58:51
本文主要是介绍php关键字仅替换一次的实现函数,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
对于批量替换关键字的问题,仅替换而言没什么可说的,但这里需要的是每个关键字仅需要替换一次就可以了。查阅了php相关函数文档,发现php本身是没有函数实现这个功能的,所以不得不自己解决了。总结了几种可行方法,小记一下!
(1)使用 preg_replace 函数实现这个功能,因为 preg_replace 这个函数本身是可以实现控制替换次数的,所以一开始就想到他了,具体实现方法如下:
//可以实现替换次数的控制,不仅限于只替换一次,比如$limit为2的时候表示一个词出现很多吃的时候仅替换2次,-1表示全部替换。$search 和 $replace 都可以是字符串或者数组,但必须对应 function str_replace_limit($search,$replace,$content,$limit=-1){ if(is_array($search)){ foreach ($search as $k=>$v){ $search[$k]='`'.preg_quote($search[$k],'`').'`'; } }else{ $search='`'.preg_quote($search,'`').'`'; } //把图片描述去掉 $content=preg_replace("/alt=([^ >]+)/is",'',$content); return preg_replace($search,$replace,$content,$limit); }
(2)使用substr_replace 函数来实现,不过这里仅能实现仅一次替换
//首先找到关键字所在位置,然后使用 substr_replace(系统函数)进行替换操作 function str_replace_once($search,$replace,$content){ //把图片描述去掉 $content=preg_replace("/alt=([^ >]+)/is",'',$content); $pos=strpos($content,$search); if($pos===false){ return $haystack; } return substr_replace($content,$replace,$pos,strlen($search)); }
`以上就是PHP只替换一次以及控制替换次数的实现函数,希望对大家的学习有所帮助。
这篇关于php关键字仅替换一次的实现函数的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-09-28怎么把PHP程序打包?-icode9专业技术文章分享
- 2024-09-28怎么用Phar打包PHP程序?-icode9专业技术文章分享
- 2024-09-13手动在github上下载的mfpt包,怎么放到thinkphp5.0框架并正常使用-icode9专业技术文章分享
- 2024-09-05python的<class 'bytearray'>相当于php的哪个数据类型-icode9专业技术文章分享
- 2024-09-05php 导出银行卡号避免科学技术法的方法-icode9专业技术文章分享
- 2024-08-30什么样的php代码质量差被称为垃圾代码-icode9专业技术文章分享
- 2024-08-30用 PHP 调用拼多多的接口以获取订单状态消息的步骤方法和代码示例-icode9专业技术文章分享
- 2024-08-27phpunit单元测试框架的入门和使用方法介绍-icode9专业技术文章分享
- 2024-08-24PHP 中date("w") 周一是多少-icode9专业技术文章分享
- 2024-08-14thinkphp8.0获取域名或主机名方法-icode9专业技术文章分享