PHP内置的字符串处理函数,是以单字节形式处理,对中文字符截取,替换 会照成乱码,相信小伙伴们学习过程中都遇见过了!
需要处理中文字符串,我们可以使用mb_string扩展函数,官方手册:https://www.php.net/manual/zh/book.mbstring.php
但mb_string扩展函数里面没有替换函数,然后自己写了一个对utf-8编码的字符替换函数,函数内使用了mb_string扩展函数,所以要执行此函数需要先要打开mb_string扩展模块.
直接放代码吧:
/**
* @param $str 规定被搜索的字符串
* @param $find 规定要查找的值
* @param $replace 规定替换的值
* @return string 返回替换的结果
*/
function utf8_str_replace($str,$find,$replace){
# 记录位置
$strpos = 0;
# 储存替换的字符串
$strstr = $str;
# $find在$str中查找到的次数
$count = mb_substr_count($str,$find,"utf-8");
# 遍历替换
for ($i=0;$i
咱来使用函数输出替换结果
echo utf8_str_replace("XX是世界上最好的语言,世界上最好的语言是XX","XX","php");
看呐!成功了~
欢迎大家来群里交流 Q群:140215071