php 判断中英文字符
编码表,双字节字符编码范围:
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 (日文)
- <?
- $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 "错误输入";
- }
- ?>
中文判断问题,其实有很多学问,底层的内部编码,涉及utf-8,gbk,gb13800的各种不同。曾经研究过如何区分一个字符是什么字符的问题,关联细节太多。