PHP字符串中插入子字符串方法总结

时间:2022-03-23 08:24:37

本文实例讲述了PHP字符串插入子字符串方法。分享给大家供大家参考,具体如下:

首先来看看一个网上常见的方法:

方法一:字符串遍历

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
function str_insert($str, $i, $substr)
{
  for($j=0; $j<$i; $j++){
    $startstr .= $str[$j];
  }
  for ($j=$i; $j<strlen($str); $j++){
    $laststr .= $str[$j];
  }
  $str = ($startstr . $substr . $laststr);
  return $str;
}
$str="1234567890";
$sstr="new_word";
echo str_insert($str,5,$sstr);//输出:12345new_word67890

上述方法采用了字符串遍历重组来实现子字符串的插入功能。

再来看看服务器之家给出的一个改进方法:

方法二:采用substr函数进行截取与组合

?
1
2
3
4
5
6
7
8
9
10
function str_insert2($str,$i,$substr){//方法二:substr函数进行截取
  $start=substr($str,0,$i);
  $end=substr($str,$i);
  $str = ($start . $substr . $end);
  return $str;
  //return substr($str,0,$i).$substr.substr($str,$i);//上述代码可综合成这一句
}
$str="1234567890";
$sstr="new_word";
echo str_insert2($str,5,$sstr);//输出:12345new_word67890

该方法直接使用substr函数进行字符串的截取,再进行字符串的拼装,从而实现子字符串的插入效果。

最后服务器之家给大家提供一个最直接的方法:

方法三:直接使用substr_replace函数进行子字符串的插入

?
1
2
echo substr_replace($str,$sstr,5,0);
//此处直接输出:12345new_word67890

希望本文所述对大家PHP程序设计有所帮助。