Rumah > pembangunan bahagian belakang > masalah PHP > php怎么判断字符串含不含中文

php怎么判断字符串含不含中文

青灯夜游
Lepaskan: 2023-03-09 17:38:01
asal
4206 orang telah melayarinya

在php中,可以使用preg_match()函数配合正则表达式来判断字符串里含不含中文,语法格式“preg_match("/[\x7f-\xff]/", 字符串)”;如果返回1则含有中文,如果返回0则不含中文。

php怎么判断字符串含不含中文

本教程操作环境:windows7系统、PHP7.1版,DELL G3电脑

自从有了黑帽SEO,对付SPAM(垃圾留言)一直是网站工作人员的工作内容之一。迫害我们的不是垃圾留言群发机,就是垃圾用户注册机。

判断字符串中是否含有中文是对付SPAM的方法之一,可以有效的阻止纯英文的垃圾留言,还可以用这个方法规范用户注册。看下面的代码,兼容gb2312和utf-8。

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);
$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 "不含中文,错误输入";
}
?>
Salin selepas log masuk

输出:

1.png

另附,双字节字符编码范围

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 (日文)*/

推荐学习:《PHP视频教程

Atas ialah kandungan terperinci php怎么判断字符串含不含中文. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan