• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

php关键字仅替换一次的实现函数_php技巧

php 搞代码 3年前 (2022-01-26) 29次浏览 已收录 0个评论

对于批量替换关键字的问题,仅替换而言没什么可说的,但这里需要的是每个关键字仅需要替换一次就可以了。查阅了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){   <strong style="color:transparent">来2源gaodaima#com搞(代@码&网</strong><label>搞gaodaima代码</label>  return $haystack;   }   return substr_replace($content,$replace,$pos,strlen($search)); } 

`以上就是PHP只替换一次以及控制替换次数的实现函数,希望对大家的学习有所帮助。


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:php关键字仅替换一次的实现函数_php技巧
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址