PHP实现通过中文字符比率来判断垃圾评论的方法

yipeiwu_com6年前PHP代码库

本文实例讲述了PHP实现通过中文字符比率来判断垃圾评论的方法。分享给大家供大家参考。具体实现方法如下:

一、需求:

最近一段时间常常出现这类垃圾评论:一大段英文字符里夹杂一两个生僻汉字,包含了中文字符,而且又没包含啥中文的敏感词,所以就堂而皇之的通过了评论过滤。对这类评论的处理可以采取判断中文字符的比率来确认,但是也会存在一定的误判。

二、解决方案:

要用到php的两个函数strlen和mb_strlen,strlen会把单个汉字长度认定为3,mb_strlen单个汉字长度为1。同一段字符通过两个函数取得的长度之差就是实际汉字字符数的二倍,除以二就得到实际的字符数,在与mb_strlen取得的长度求比值就得到汉字占总字符数的比率。

三、实现代码:

复制代码 代码如下:
$len_all = strlen($comment['text']);                     
 $len_st = mb_strlen($comment['text'], 'UTF-8');
 if(($len_all-$len_st)/(2*$len_st) < 0.5){
        $error = "中文字符少于百分之五十"; 
 }

如果在评论中贴代码的话,就会造成中文字符比率低,需要过滤掉代码字段再来判断。

希望本文所述对大家的PHP程序设计有所帮助。

相关文章

小谈php正则提取图片地址

迷上了正则,不断尝试着新花招,首先感谢TNA 的非完全输出RSS,然后再次感谢SH的强迫性学习。没有TNA,我不会去看正则,更不知道世界上有种这么牛的表达式;不是SH的死活说他不懂不知道...

PHP的中使用非缓冲模式查询数据库的方法

最近在开发一个PHP程序时遇到了下面的错误: PHP Fatal error: Allowed memory size of 268 435 456 bytes exhausted 错误...

php中filter函数验证、过滤用户输入的数据

PHP Filter 简介 PHP 过滤器用于对来自非安全来源的数据(比如用户输入)进行验证和过滤。 复制代码 代码如下: //除去html标签,或除去编码特殊字符 var_dump(f...

自制PHP框架之路由与控制器

自制PHP框架之路由与控制器

我们为什么要使用路由?原因1:一个更漂亮的URI 1.URI的改进 刚刚开始学PHP时,我们一定写过blog.php?id=1之类的URI,使用GET方式获取参数。这样的URI有...

PHPExcel读取EXCEL中的图片并保存到本地的方法

HPExcel是相当强大的 MS Office Excel 文档生成类库,当需要输出比较复杂格式数据的时候,PHPExcel 是个不错的选择。 经过认真研究API文档和查看官方文档,终于...