- PHP屏蔽關(guān)鍵字的方法是什么 推薦度:
- 相關(guān)推薦
PHP屏蔽關(guān)鍵字的方法
導(dǎo)語:現(xiàn)在網(wǎng)絡(luò)信息監(jiān)管很嚴(yán)格,特別是屏蔽關(guān)鍵字。下面是PHP屏蔽關(guān)鍵字的方法,希望對你有所幫助:
第一種方法
思路 用正則去匹配關(guān)鍵字,把關(guān)鍵字用別的字符替換
$str = "/你大爺|你痹|什么玩意|SB|你 /"; // 關(guān)鍵字正則字符串
$string = "你干什么玩意了 SB"; // 文本字符串
echo preg_replace($str, "*", $string); //preg_replace() 執(zhí)行一個正則表達(dá)式的匹配和替換
OK 方法一結(jié)束 挺簡單把 大家在看的時候可以根據(jù)思路自己先去想
方法二
思路
1.把關(guān)鍵字放到一個txt文檔中 要用一定的符合分隔開 ,用file_get_contents() 函數(shù)將關(guān)鍵字文檔讀入
2.用函數(shù)explode() 把字符串分割成數(shù)組 循環(huán)數(shù)組 strpos() 查找匹配關(guān)鍵字
header('content-type:textml; charset=utf-8;');
function strPosF uck($content)
{
$f uck = file_get_contents('keyWords.txt'); // 讀取關(guān)鍵字文本信息
$content = trim($content); $f uckArr = explode(" ",$f uck); // 把關(guān)鍵字轉(zhuǎn)換為數(shù)組
for ($i=0; $i < count($f uckArr) ; $i++)
{
// $f uckArr[$i] = trim($f uckArr[$i]);
if ($ f uckArr[$i] == "") {
continue; //如果關(guān)鍵字為空就跳過本次循環(huán)
# code...
}
if (strpos($content,trim($f uckArr[$i])) != false)
{
return $f uckArr[$i]; //如果匹配到關(guān)鍵字就返回關(guān)鍵字
# code...
}
} return false; // 如果沒有匹配到關(guān)鍵字就返回 false
}
$content = "我今天你大爺碰到一個SB";
$key = strPosF uck($content);
if ($key)
{
echo "存在關(guān)鍵字".$key;
# code...
}
else
{
echo "OK";
}
注意點(diǎn) 一定要去空
strops() 函數(shù)返回值 要么是false 要么就是關(guān)鍵字的位置 判斷的時候注意
成功后大家可以想想怎么把匹配到的關(guān)鍵字全部返回組成一個字符串或者數(shù)組。
【PHP屏蔽關(guān)鍵字的方法】相關(guān)文章:
PHP屏蔽關(guān)鍵字的方法是什么02-17
PHP錯誤類型及屏蔽方法07-26
PHP錯誤類型及屏蔽方法有哪些05-05
PHP中this關(guān)鍵字06-08
php中屏蔽與顯示錯誤消息06-24
PHP中final關(guān)鍵字用法08-14
PHP的安裝方法03-03
自學(xué)PHP方法04-26