函数定义:
str_replace() :函数替换字符串中的一些字符(区分大小写).
substr_replace() :函数把字符串的一部分替换为另一个字符串.
区别:
str_replace()和substr_replace()这两个函数概念,看起来都是替换字符串没什么区别.但是两者的用法还是有区别?
str_replace() 使用场景更多是对单个字符串和连续字符串过滤替换处理. 注意:间隔字符串过滤替换,更多使用php正则匹配替换处理
substr_replace() 使用场景对字符串长度位置检索进行过滤替换或插入处理. 注意:对中文字符串截取不适用,更多使用中文截取函数mb_substr()
语法:
str_replace(find,replace,string,count)
demo示例:
1.字符串替换字符串
1 $stringData = str_replace('world','Admin','Hello world',$i); 2 print_r($stringData);//Hello Admin 3 echo '替换次数:'.$i;//替换次数:1
2.字符串替换数组键值
1 $arrData = array('A','B','C','D_A'); 2 print_r(str_replace('A','E',$arrData,$i));//Array ( [0] => E [1] => B [2] => C [3] => D_E ) 3 echo '替换次数:'. $i;//替换次数:2
3.数组匹配字符串替换数组键值
1 $find = array('A','D'); 2 $replace = 'E'; 3 $arrData = array('A','B','C','D_A'); 4 print_r(str_replace($find,$replace,$arrData,$i));//Array ( [0] => E [1] => B [2] => C [3] => E_E ) 5 echo '替换次数:'.$i;//替换次数:3
4.数组匹配数组替换数组键值
1 $find = array('A','D'); 2 $replace = array('E'); 3 $arrData = array('A','B','C','D_A'); 4 print_r(str_replace($find,$replace,$arrData,$i));//Array ( [0] => E [1] => B [2] => C [3] => _E ) 5 echo '替换次数:'.$i;//替换次数:3
语法:
substr_replace(string,replacement,start,length)
demo示例:
1.替换字符串
1 $a=substr_replace('ABCD1234','...',4); 2 print_r($a);//ABCD...
2.插入字符串
1 $b=substr_replace('ABCD1234','...',4,0); 2 print_r($b);//ABCD...1234
3.插入字符串和规定要替换多少个字符
1 $c=substr_replace('ABCD1234','...',4,1); 2 print_r($c);//ABCD...234
4.数组匹配字符串插入
1 $replace = array('A','BB','CCC','DDDD'); 2 print_r(substr_replace($replace,'E',2,0));//Array ( [0] => AE [1] => BBE [2] => CCEC [3] => DDEDD )