PHP7中文手册2018 带注释 最新chm版
function strLength($str,$charset='utf-8'){
if($charset=='utf-8') $str = iconv('utf-8','gb2312',$str);
$num = strlen($str);
$cnNum = 0;
for($i=0;$i<$num;$i++){
if(ord(substr($str,$i+1,1))>127){
$cnNum++;
$i++;
}
}
$enNum = $num-($cnNum*2);
$number = ($enNum/2)+$cnNum;
return ceil($number);
}
字符串定义:
$str = "和我一起说:Hello world!";
1、获取中英文混合长度
$con = $this->strLength($str,'gb2312');
echo “$con”;
2、获取字符串中中文长度
$pa = '/[\x{4e00}-\x{9fa5}]/siu';
preg_match_all($pa, $str, $r);
$count = count($r[0]);
echo $count;
3、获取字符串字节长度(一个汉字3个字节)
$count = strlen($str);
转载请注明:谷谷点程序 » php获取中英文字符串长度 获取中英文混合长度函数