您好,登錄后才能下訂單哦!
利用PHP怎么對關鍵字進行屏蔽?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
第一種方法
思路 用正則去匹配關鍵字,把關鍵字用別的字符替換
$str = "/你大爺|你麻痹|什么玩意|SB|你他媽/"; // 關鍵字正則字符串 $string = "你他媽干什么玩意了 SB"; // 文本字符串 echo preg_replace($str, "*", $string); //preg_replace() 執行一個正則表達式的匹配和替換
OK 方法一結束 挺簡單把 大家在看的時候可以根據思路自己先去想
方法二
思路
1.把關鍵字放到一個txt文檔中 要用一定的符合分隔開 ,用file_get_contents() 函數將關鍵字文檔讀入
2.用函數explode() 把字符串分割成數組 循環數組 strpos() 查找匹配關鍵字
代碼
header('content-type:textml; charset=utf-8;'); function strPosFuck($content) { $fuck = file_get_contents('keyWords.txt'); // 讀取關鍵字文本信息 $content = trim($content); $fuckArr = explode("\n",$fuck); // 把關鍵字轉換為數組 for ($i=0; $i < count($fuckArr) ; $i++) { // $fuckArr[$i] = trim($fuckArr[$i]); if ($fuckArr[$i] == "") { continue; //如果關鍵字為空就跳過本次循環 # code... } if (strpos($content,trim($fuckArr[$i])) != false) { return $fuckArr[$i]; //如果匹配到關鍵字就返回關鍵字 # code... } } return false; // 如果沒有匹配到關鍵字就返回 false } $content = "我今天你大爺碰到一個SB"; $key = strPosFuck($content); if ($key) { echo "存在關鍵字".$key; # code... } else { echo "OK"; }
注意點 一定要去空 一定要去空 ,
strops() 函數返回值 要么是false 要么就是關鍵字的位置 判斷的時候注意
成功后大家可以想想怎么把匹配到的關鍵字全部返回組成一個字符串或者數組
關于利用PHP怎么對關鍵字進行屏蔽問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。