《PHP實(shí)例:ucenter中詞語過濾原理分析》要點(diǎn):
本文介紹了PHP實(shí)例:ucenter中詞語過濾原理分析,希望對(duì)您有用。如果有疑問,可以聯(lián)系我們。
本文分析了ucenter中詞語過濾原理.分享給大家供大家參考,具體如下:PHP實(shí)戰(zhàn)
過濾詞語表:PHP實(shí)戰(zhàn)
id | admin | find | replacement | findpattern |
1 | UCenterAdminist | 訪問 | 大 | /訪問/is |
2 | UCenterAdminist | 4655 | 45 | /4655/is |
3 | UCenterAdminist | fdsaf | dfsa | /fdsaf/is |
4 | UCenterAdminist | 有機(jī)會(huì) | 在 | /有機(jī)會(huì)/is |
組建緩存數(shù)據(jù):PHP實(shí)戰(zhàn)
//private function _get_badwords() { $data = $this->db->fetch_all("SELECT * FROM ".UC_DBTABLEPRE."badwords"); $return = array(); if(is_array($data)) { foreach($data as $k => $v) { $return['findpattern'][$k] = $v['findpattern']; $return['replace'][$k] = $v['replacement']; } } return $return; }
調(diào)用方法:PHP實(shí)戰(zhàn)
$_CACHE['badwords'] = $this->base->cache('badwords'); if($_CACHE['badwords']['findpattern']) { $subject = @preg_replace($_CACHE['badwords']['findpattern'], $_CACHE['badwords']['replace'], $subject); $message = @preg_replace($_CACHE['badwords']['findpattern'], $_CACHE['badwords']['replace'], $message); }
preg_replace() 的每個(gè)參數(shù)(除了 limit)都可以是一個(gè)數(shù)組.如果 pattern 和 replacement 都是數(shù)組,將以其鍵名在數(shù)組中出現(xiàn)的順序來進(jìn)行處理.這不一定和索引的數(shù)字順序相同.如果使用索引來標(biāo)識(shí)哪個(gè) pattern 將被哪個(gè) replacement 來替換,應(yīng)該在調(diào)用 preg_replace() 之前用 ksort() 對(duì)數(shù)組進(jìn)行排序.PHP實(shí)戰(zhàn)
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php安全過濾技巧總結(jié)》、《PHP運(yùn)算與運(yùn)算符用法總結(jié)》、《PHP網(wǎng)絡(luò)編程技巧總結(jié)》、《PHP基本語法入門教程》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《PHP數(shù)組(Array)操作技巧大全》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》PHP實(shí)戰(zhàn)
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助.PHP實(shí)戰(zhàn)
轉(zhuǎn)載請(qǐng)注明本頁網(wǎng)址:
http://www.fzlkiss.com/jiaocheng/5680.html