您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

php截取中文的函数utf_substr

2025/1/31 17:42:33发布31次查看
$tmp = preg_replace('/[一-龥]/u','','你好我是谁?123abc');/u是utf-8
复制代码
代码1,php截取utf-8字符串,解决半字符问题
127){ $i++; if($i $new_str[]=substr($str,0,3); $str=substr($str,3); } }else{ $new_str[]=substr($str,0,1); $str=substr($str,1); }}return join($new_str);}//调用示例
$str = utf_substr('你好',4);echo $str;?>
复制代码
代码2,截取utf-8字符串函数
=224){ //如果ascii位高与224, $returnstr=$returnstr.substr($sourcestr,$i,3); //根据utf-8编码规范,将3个连续的字符计为单个字符 $i=$i+3; //实际byte计为3 $n++; //字串长度计1 }elseif ($ascnum>=192){ //如果ascii位高与192, $returnstr=$returnstr.substr($sourcestr,$i,2); //根据utf-8编码规范,将2个连续的字符计为单个字符 $i=$i+2; //实际byte计为2 $n++; //字串长度计1 }elseif ($ascnum>=65 && $ascnum $returnstr=$returnstr.substr($sourcestr,$i,1); $i=$i+1; //实际的byte数仍计1个 $n++; //但考虑整体美观,大写字母计成一个高位字符 }else{ //其他情况下,包括小写字母和半角标点符号, $returnstr=$returnstr.substr($sourcestr,$i,1); $i=$i+1; //实际的byte数计1个 $n=$n+0.5; //小写字母和半角标点等与半个高位字符宽... }}if ($str_length>$cutlength){ $returnstr = $returnstr . ...;//超过长度时在尾处加上省略号}return $returnstr;}//调用示例
$str = '你好!我好';$str = cut_str($str,3);echo $str;?>
复制代码
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product