1. 程式人生 > >thinkphp讀取檔案,寫一個敏感詞彙判斷方法

thinkphp讀取檔案,寫一個敏感詞彙判斷方法

1、在thinkphp內讀取檔案

在tp內讀取檔案的默人訪問的路徑是根目錄同級的路徑
這是controoler內的寫法:

class ValidateController{
    static function checkSensitiveWord($content){
        $file = fopen('./sensitiveWord','r');
        if(!$file){
            $sensitiveWords = [];
        }else{
            $word = [];
            $i = 0;
            while
(!feof($file)){ $word[$i] = fgets($file); $i++ ; } fclose($file); $sensitiveWords = array_filter($word); } }

這是檔案sensitiveWord的位置:
S)D_B8$WN([G5N4U~W238JN.png
和入口檔案index.php同級。不過這邊的檔案是以’換行’\n的方式來讀取的,如果是採用別的方式,自行讀取解析就好了

2、判斷是否含有敏感詞彙

        $count
= count($sensitiveWords); for ($i = 0; $i<$count; $i++){ if(substr_count($content,$sensitiveWords[$i])>0){ return false; }else{ if($count == ($i + 1)){ return true; } } }

如果false的話,說明待檢測的變數content中含有敏感詞彙。

3、mark我遇到的坑,用ps新建檔案的時候,提示是以txt檔案形式來閱讀的,於是之後一直寫sensitiveWord.txt,導致總是出錯,so be careful.如果是這邊在線上的話,建議做好詞彙資料的快取,提高處理的速度。