PHP替换字符串(只替换首个字符串)

发布时间:2020-03-13编辑:脚本学堂
本文介绍下php替换字符串的方法,只替换第一次出现的字符串,在原字符串中查找目标字符串,只替换第一次出现的目标字符串,有需要的朋友参考下。

进行一次字符串的替换,原理:在原字符串中查找目标字符串,只替换第一次出现的目标字符串。

例如:
$str='这是一串字符串,你想在这abc里查找替换,个神经或中枢都分别掌管人类的心理、情绪和肉体各方面反应。此外,还有一个在灵性方面掌管我们的开悟和永恆的快乐,这个小中枢就在大脑接近中央的地方,也就是额头中央和头顶进去到头部三分之二的地方,智abc慧眼确实就在这个地方、真的在裡面。';

把第一个abc替换成xyz,由于要替换的字符串是固定的,很多人想到了用str_replace()函数:
 

str_replace( mixed $search , mixed $replace , mixed $subject [, int &$count ] )

最后那个参数是返回替换发生的总次数,它是一个引用变量,而不是我要想要的指定它将替换几次,所以用str_replace()是不行的
preg_replace()是可以实现的,可惜用了正则,
 

复制代码 代码示例:
$str=preg_replace('/abc/','xyz',$str,1);
echo $str;

不用正则的字符串替换代码:
 

复制代码 代码示例:
$replace='xyz';
if(($position=strpos($str,$replace))!==false){
     $leng=strlen($replace);
    $str=substr_replace($str,'xyz',$position,$leng);
}
echo $str;