判断是否为汉字,这要用到一些编码的知识
不过Javascript是把汉字当做1的,如果你用javascript的话,可以得到3的值
好好研究这个http://expert.csdn.net/Expert/FAQ/FAQ_Index.asp?id=3382
应该可以解决你的问题

解决方案 »

  1.   

    我以前曾将中文的内容分行保存在数据库中,做法大概如下:
      在要分行的地方,用字符串函数判断该行最后两个字符的ASCII码(中文占两个字符),看其值的大小,如果有在一百二十多(具体记不清了,你可查看有关ASCII码的书)以上则为中文。判断好最后一个是中文还是其它字符后就可以正确保存。
      

  2.   

    加载MB_string.dll
    使用宽子节函数
      

  3.   

    我自己解决了,我编了一个函数<?
    function InvalidLength($content)
    {
    //返回1没有超长,返回0超长
    $j=0;
    $m=0;
    $rlen = strlen($content);
    for($i=0;$i<$rlen;$i++)
    {
    if(ord($content[$i]) <0 || ord($content[$i])>127)
    $j++;
    else
    $m++;
    }
    //return ($m*2 + $j <= $len);
    return ($j/2 + $m );
    }
      

  4.   

    function qswhLen($str){ 
    preg_match_all("/[\xa0-\xff]?./",$str,$arr);
    return count($arr[0]);
    }
    echo qswhLen("汉字Abc");