Heim  >  Artikel  >  php教程  >  php 统计计算中文汉字字数代码

php 统计计算中文汉字字数代码

WBOY
WBOYOriginal
2016-06-08 17:24:001704Durchsuche

本文章来给大家介绍一些常用见的php 统计计算中文汉字字数代码,有需要了解的朋友可进入参考。

<script>ec(2);</script>

用ASCII码判断。

 代码如下 复制代码

$str="abcdefg中华人民共和国中国人民解放军中国共产党中国人民";
$num=strlen($str); //$num字串长度。
echo $num."
";
for($i=0;$i if(ord(substr($str,$i,1))>0xa0) $j++;
echo $j/2; //$j/2 汉字数。
?>


应该这样剥除所有字母数字和标点,空格。

代码:

 代码如下 复制代码

$testStr = '我没有告诉你,你就千万不要乱guess, 这样可不good!';
$testStr = eregi_replace("[[:alnum:]]|[[:punct:]]|[[:space:]]",'',$testStr);
echo($testStr);
echo ('字符串中所有中文字数为:'.mb_strlen($testStr));
?>


#计算中英文混合字符串的长度

 代码如下 复制代码

function ccStrLen($str)
{
$ccLen=0;
$ascLen=strlen($str);
$ind=0;
$hasCC=ereg("[xA1-xFE]",$str); #判断是否有汉字
$hasAsc=ereg("[x01-xA0]",$str); #判断是否有ASCII字符
if($hasCC && !$hasAsc) #只有汉字的情况
return strlen($str)/2;
if(!$hasCC && $hasAsc) #只有Ascii字符的情况
return strlen($str);
for($ind=0;$ind {
if(ord(substr($str,$ind,1))>0xa0)
{
$ccLen++;
$ind++;
}
else
{
$ccLen++;
}
}
return $ccLen;
}
function ccStrLeft($str,$len) #从左边截取中英文混合字符串
{
$ascLen=strlen($str); if($ascLen $hasCC=ereg("[xA1-xFE]",$str); #同上
$hasAsc=ereg("[x01-xA0]",$str);
if(!$hasCC) return substr($str,0,$len);
if(!$hasAsc)
if($len & 0x01) #如果长度是奇数
return substr($str,0,$len+$len-2);
else
return substr($str,0,$len+$len);
$cind=0;$flag=0;
while($cind {
if(ord(substr($str,$cind,1)) $cind++;
}
if($flag & 0x01)
return substr($str,0,$len);
else
return substr($str,0,$len-1);
}

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn