$arr = array(
'1',
'一',
'2'
'二',
'3',
'三'
);
1是“一”的下标?你看看手册去吧先

解决方案 »

  1.   

    $str = '实验小学一年级';
    $arr = array(1=>'一' , '二' , '三');
    $tmpArr = array_flip($arr);$tmpStr = '一';
    echo $tmpArr[$tmpStr];
      

  2.   

    $re['utf-8']   = "/[\x01-\x7f]|[\xc2-\xdf][\x80-\xbf]|[\xe0-\xef][\x80-\xbf]{2}|[\xf0-\xff][\x80-\xbf]{3}/";   
    $re['gb2312'] = "/[\x01-\x7f]|[\xb0-\xf7][\xa0-\xfe]/";  
    $re['gbk']   = "/[\x01-\x7f]|[\x81-\xfe][\x40-\xfe]/";  
    $re['big5']   = "/[\x01-\x7f]|[\x81-\xfe]([\x40-\x7e]|\xa1-\xfe])/"; preg_match_all($re['gb2312'], "一实验小学年级", $m);//print_r($m[0]);$array2 = array('1', '一', '2', '二', '3', '三');$result = array_intersect($array2, $m[0]);print_r($result);$result = array_unique($result);print_r($result);foreach($result as $k => $v){
    echo $k;
    echo "\r\n";
    }截字符串有点问题,用循环效率恐怕还高吧?为什么不用?