一個高效過濾敏感詞的方法


 $badword = [   
        '張三',
        '張三豐',
        '張三豐田'   
    ];    

    $str = '我今天開着張三豐田上班';    
    echo replaceBadWords($badword,$str);
    
    /**
     * 過濾敏感詞(將敏感詞替換成"*"號)
     * @param array $bad_words_arr [敏感詞數組]
     * @param string $replace_str [要處理的字符串]
     **/
    function replaceBadWords($bad_words_arr,$replace_str){

        if(!is_array($bad_words_arr) || empty($bad_words_arr)){
            return $replace_str;
        }

        $null_arr=array_fill(0, count($bad_words_arr), '*'); //生成一個只有"*"元素的數組
        
        $replace_arr=array_combine($bad_words_arr,$null_arr); //合並數組

        return strtr($replace_str,$replace_arr);
    }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM