PHP實(shí)現(xiàn)的敏感詞過濾方法示例
2019-06-05 11:09御風(fēng)劍士服務(wù)器之家 PHP教程
這篇文章主要介紹了PHP實(shí)現(xiàn)的敏感詞過濾方法,涉及php字符串正則匹配、分割、轉(zhuǎn)換等相關(guān)操作技巧,需要的朋友可以參考下
本文實(shí)例講述了PHP實(shí)現(xiàn)的敏感詞過濾方法。分享給大家供大家參考,具體如下:
1、敏感詞過濾方法
07 | function sensitive( $list , $string ){ |
10 | $stringAfter = $string ; |
11 | $pattern = "/" .implode( "|" , $list ). "/i" ; |
12 | if (preg_match_all( $pattern , $string , $matches )){ |
13 | $patternList = $matches [0]; |
14 | $count = count ( $patternList ); |
15 | $sensitiveWord = implode( ',' , $patternList ); |
16 | $replaceArray = array_combine ( $patternList , array_fill (0, count ( $patternList ), '*' )); |
17 | $stringAfter = strtr ( $string , $replaceArray ); |
19 | $log = "原句為 [ {$string} ]<br/>" ; |
23 | $log .= "匹配到 [ {$count} ]個(gè)敏感詞:[ {$sensitiveWord} ]<br/>" . |
24 | "替換后為:[ {$stringAfter} ]" ; |
2、調(diào)用方法
02 | $string = 'likeyou小白喜歡小黑愛著的大黃' ; |
03 | $list = [ '小明' , '小紅' , '大白' , '小白' , '小黑' , 'me' , 'you' ]; |
04 | $result = $this ->sensitive( $list , $string ); |
希望本文所述對大家PHP程序設(shè)計(jì)有所幫助。