這需要用到正規 (推薦學習:PHP影片教學)
preg_match('/[\x{4e00}-\x{9fa5}]/u', $str) //UTF-8
這個可以符合字串中是否有中文,沒有的話回傳0
<? $str = "测试中文"; echo $str; echo "<hr>"; //if (preg_match("/^[".chr(0xa1)."-".chr(0xff)."]+$/", $str)) { //只能在GB2312情况下使用 //if (preg_match("/^[\x7f-\xff]+$/", $str)) { //兼容gb2312,utf-8 //判断字符串是否全是中文 if (preg_match("/[\x7f-\xff]/", $str)) { //判断字符串中是否有中文 echo "正确输入"; } else { echo "错误输入"; } ?>
另附,雙字節字元編碼範圍
GBK (GB2312/GB18030)
#\x00 -\xff GBK雙位元組編碼範圍
\x20-\x7f ASCII
\xa1-\xff 中文gb2312
#\x80-\xff 中文gbk
UTF-8 (Unicode)
\u4e00-\u9fa5 (中文)
\x3130-\x318F (韓文
\xAC00 -\xD7A3 (韓文)
\u0800-\u4e00 (日文)*/
以上是php判斷一個字元是否為漢字的詳細內容。更多資訊請關注PHP中文網其他相關文章!