PHP判断中英文的依据是字符的ASII值,而字符的ASII值也因编码不同而不同。为了能编写判断中英文字符的php程序,我们必须先来了解下各编码下中文英文字符的ASII值范围:

1. GBK (GB2312/GB18030)

\x00-\xff GBK双字节编码范围

\x20-\x7f ASCII

\xa1-\xff 中文 gb2312

\x80-\xff 中文 gbk

2. UTF-8 (Unicode)

\u4e00-\u9fa5 (中文)

\x3130-\x318F (韩文

\xAC00-\xD7A3 (韩文)

\u0800-\u4e00 (日文)

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<HTML>

<HEAD>

<TITLE> New Document </TITLE>

<META http-equiv="Content-Type" content="text/html; charset=utf-8">

</HEAD>

<BODY>

<?

$str = "中文";

echo $str;

echo "<hr>";

//if (preg_match("/^[".chr(0xa1)."-".chr(0xff)."]+$/", $str)) { //只能在GB2312情况下使用

if (preg_match("/^[\x7f-\xff]+$/", $str)) { //兼容gb2312,utf-8

    echo "正确输入";

} else {

    echo "错误输入";

}

?>

</BODY>

关于PHP如何判断字符串中的中文字符,本文就介绍这么多,希望对您有所帮助,谢谢!

03-15 06:01