ord($char)>125就淘汰。
这个125数字不准,具体可以查阅一下编码表。

解决方案 »

  1.   

    还想问一下:如果是数组的话,也就是说如果是字符串,应该怎么处理呢?
    比如:“ABCD”,如果全角下输入她,我取出第0个,她的值是“?”,晕ing
      

  2.   

    $str="abcd全角字符";
    for($i=0;$i<strlen($str);$i++){
         if(ord($str[$i])>127)
               全角字符
         else
               半角字符
    }
      

  3.   

    我也想过这样的做法的:
    写了如下简单代码:
    $str = "abcd全角字符";
    for ($i = 0; $i < strlen($str); $i ++) {
    if (ord($str[$i]) > 127)
    {
    echo ($str[$i]."全角<br>");
    }else {
    echo ($str[$i]."半角<br>");
    }
    }
    输出:
    a半角
    b半角
    c半角
    d半角
    热?br>?br>饺?br>侨?br>兹?br>秩?br>啡?br>?br>
    ///////////////////////////////////////////////////////////
    当然可以判断出来,但是还是很别扭,晕