php中如何判断中英文字符
发布网友
发布时间:2022-05-03 01:42
我来回答
共1个回答
热心网友
时间:2022-06-29 04:50
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>