您好,欢迎访问一九零五行业门户网

php截取中文的函数utf_substr

$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;?>
复制代码
其它类似信息

推荐信息