function filterWords($content,$file='./Public/swords.txt'){
$len = mb_strlen($content);
if($len==0){
return true;
}
mb_internal_encoding('utf-8'); //内部编码改为utf8
$keywords=array_unique(explode(',',file_get_contents($file)));
//按首字分组
$dict=array();
foreach($keywords as $keyword){
if(empty($keyword)){
continue;
}
$key = mb_substr($keyword,0,1); //啊扁推翻
$dict[$key]['list'][]=$keyword; //dict['啊']['list'][] = '啊扁推翻'
//dict['啊']['max'] = 4,dict['啊']['max'] 获取字符串最长的
$dict[$key]['max']=max(isset($dict[$key]['max']) ? $dict[$key]['max'] : 0,mb_strlen($keyword));
}
//开始过滤
// $result='';
for($i=0;$i<$len;++$i){ //200个字 陈啊扁推翻中共
$key=mb_substr($content,$i,1);
if(array_key_exists($key,$dict)){
$res=mb_substr($content,$i,$dict[$key]['max']);
$af=0;
foreach($dict[$key]['list'] as $k=>$keyword){
if(mb_strpos($res,$keyword) !==false){
$keywordlen=mb_strlen($keyword);
$af=$keywordlen-1;
// $result .=str_repeat("*",$keywordlen);
// break;
return false;
}elseif($k==0){
// $result .= mb_substr($res,0,1);
}
}
$i+=$af;
}
// else{
// $result .= mb_substr($content,$i,1);
// }
}
// return $result;
return true;
}