php中如何判断中英文字符

php中如何判断中英文字符

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>

</HTML>