本文实例讲述了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程序设计有所帮助。