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