建议你看看PHP提供的函数库
变数处理函式库共有 17 个函式:
gettype: 取得变数的型态。 
intval: 变数转成整数型态。 
doubleval: 变数转成倍浮点数型态。 
empty: 判断变数是否已设定。 
is_array: 判断变数型态是否为阵列型态。 
is_double: 判断变数型态是否为倍浮点数型态。 
is_float: 判断变数型态是否为浮点数型态。 
is_int: 判断变数型态是否为整数型态。 
is_integer: 判断变数型态是否为长整数型态。 
is_long: 判断变数型态是否为长整数型态。 
is_object: 判断变数型态是否为物件型态。 
is_real: 判断变数型态是否为实数型态。 
is_string: 判断变数型态是否为字串型态。 
isset: 判断变数是否已设定。 
settype: 设定变数型态。 
strval: 将变数转成字串型态。 
unset: 删除变数。 

解决方案 »

  1.   

    <?
    $number=ord($str_chinese);//得到字符的ASCII码
    if($number>=45217&&$number<=55359) { echo "汉字!";}
    else { echo "其他文字!"}
    ?>
      

  2.   

    这个45217和55359对不对啊,我是这样写的if(!($number>=45217&&$number<=55359)){$error="请输入汉字";}可是当填的确实是汉字时却也出现这样的错误 。
    还有在正规表达式中,有没有汉字的定义啊
    if(!ereg("^[汉字]{1,}",$name))???有没有啊
      

  3.   

    这个程序别人拿去好用,怎么到你那变味了?
    你逐个分析字符,
    得到字符的ASCII码,
    判断她的ASCII码是否在汉字范围内,不就行了?
    还有,有好的方法请告诉我,不要吝啬哦!