利用PHP怎么對(duì)關(guān)鍵字進(jìn)行屏蔽?針對(duì)這個(gè)問(wèn)題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問(wèn)題的小伙伴找到更簡(jiǎn)單易行的方法。
創(chuàng)新互聯(lián)是專業(yè)的網(wǎng)站建設(shè)公司,提供網(wǎng)站建設(shè),網(wǎng)站制作,網(wǎng)站設(shè)計(jì)等網(wǎng)站開(kāi)發(fā)一體化解決方案;包括html5,微信平臺(tái)小程序開(kāi)發(fā),網(wǎng)站定制,企業(yè)網(wǎng)站建設(shè),商城網(wǎng)站制作,響應(yīng)式網(wǎng)站,建網(wǎng)站,PHP網(wǎng)站建設(shè),軟件開(kāi)發(fā),軟文營(yíng)銷,網(wǎng)站營(yíng)銷。歡迎做網(wǎng)站的企業(yè)前來(lái)合作洽談,創(chuàng)新互聯(lián)將竭誠(chéng)為您服務(wù)!第一種方法
思路 用正則去匹配關(guān)鍵字,把關(guān)鍵字用別的字符替換
$str = "/你大爺|你麻痹|什么玩意|SB|你他媽/"; // 關(guān)鍵字正則字符串 $string = "你他媽干什么玩意了 SB"; // 文本字符串 echo preg_replace($str, "*", $string); //preg_replace() 執(zhí)行一個(gè)正則表達(dá)式的匹配和替換
OK 方法一結(jié)束 挺簡(jiǎn)單把 大家在看的時(shí)候可以根據(jù)思路自己先去想
方法二
思路
1.把關(guān)鍵字放到一個(gè)txt文檔中 要用一定的符合分隔開(kāi) ,用file_get_contents() 函數(shù)將關(guān)鍵字文檔讀入
2.用函數(shù)explode() 把字符串分割成數(shù)組 循環(huán)數(shù)組 strpos() 查找匹配關(guān)鍵字
代碼
header('content-type:textml; charset=utf-8;'); function strPosFuck($content) { $fuck = file_get_contents('keyWords.txt'); // 讀取關(guān)鍵字文本信息 $content = trim($content); $fuckArr = explode("\n",$fuck); // 把關(guān)鍵字轉(zhuǎn)換為數(shù)組 for ($i=0; $i < count($fuckArr) ; $i++) { // $fuckArr[$i] = trim($fuckArr[$i]); if ($fuckArr[$i] == "") { continue; //如果關(guān)鍵字為空就跳過(guò)本次循環(huán) # code... } if (strpos($content,trim($fuckArr[$i])) != false) { return $fuckArr[$i]; //如果匹配到關(guān)鍵字就返回關(guān)鍵字 # code... } } return false; // 如果沒(méi)有匹配到關(guān)鍵字就返回 false } $content = "我今天你大爺碰到一個(gè)SB"; $key = strPosFuck($content); if ($key) { echo "存在關(guān)鍵字".$key; # code... } else { echo "OK"; }
注意點(diǎn) 一定要去空 一定要去空 ,
strops() 函數(shù)返回值 要么是false 要么就是關(guān)鍵字的位置 判斷的時(shí)候注意
成功后大家可以想想怎么把匹配到的關(guān)鍵字全部返回組成一個(gè)字符串或者數(shù)組
關(guān)于利用PHP怎么對(duì)關(guān)鍵字進(jìn)行屏蔽問(wèn)題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒(méi)有解開(kāi),可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識(shí)。