判断用户留言是否垃圾留言的方法

2020-04-15 893

在前面的建站课程中,我们讲了怎么制作网站的留言系统,很多网站都要使用这种系统。但留言系统的一个常见问题就是用户的垃圾留言信息,往往这些信息并不是人工发布的,而是通过机器人自动发布的。

为了屏蔽这些垃圾信息,我们需要给自己网站的留言系统加一个过滤机制,通过PHP判断用户留言是否垃圾留言。


PHP判断用户留言是否垃圾留言的原理就是检测留言信息中是否全部是英文字符,这也是最常见的垃圾留言方式。判断代码如下:

$str = '中a文3测试';
if (preg_match("/([\x81-\xfe][\x40-\xfe])/", $str, $match)) {
    echo '含有汉字';
} else {
    echo '不含有汉字';
}

还可以直接判断留言信息中是否全部为中文,判断代码如下:

$str = '中文测试';
if (preg_match_all("/^([\x81-\xfe][\x40-\xfe])+$/", $str, $match)) {
    echo '全部是汉字';
} else {
    echo '不全是汉字';
}

通过在留言系统里加上以上的PHP判断代码,就可以过滤用户的垃圾信息了。