这须要用到正则 (引荐进修: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推断一个字符是不是是汉字的细致内容,更多请关注ki4网别的相干文章!