php 如何将一串字符插入到另一串字符串的指定位置?

例如现有字符hello,字符串123456,要将hello插入字符串中间的6前面,结果是12345hello6,如何操作?

以下是一个参考函数,

参数$str为,原始字符串,例如123456。

参数$i为,要插入的位置。

参数$substr为,要插入的字符串,例如hello。

返回值为最后结果,例如12345hello6

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; 
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-03-14
$str = '0123456789';
$str1 = 'kkk';
function insertStr($str,$ins,$key)
{
if($key>strlen($str) || $key<0 || !is_numeric($key)){
return '插入位置不合法';
}else{
return str_replace($str[$key-1],$str[$key-1].$ins,$str);
}
}

echo insertStr($str,$str1,10);
相似回答