이 기사의 예에서는 PHP에서 특정 키워드를 차단하고 필터링하는 방법을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 구체적인 분석은 다음과 같습니다.
구현 아이디어:
1. 키워드는 한 줄에 하나씩 구체적으로 작성하세요. 개수에는 제한이 없습니다.
2. PHP는 키워드 텍스트를 읽고 이를 배열에 저장합니다
3. 키워드 배열을 순회하면서 strpos 함수를 하나씩 사용해 내용에 키워드가 있는지 확인합니다. 키워드가 있으면 true를 반환하고, 없으면 false를 반환합니다
PHP 코드는 다음과 같습니다.
/* PHP에서 키워드를 필터링하려면 strpos 함수를 사용하세요 */
// 키워드 필터 기능
함수 keyWordCheck($content){
// 공백 제거
$content = 트림($content);
//키워드 텍스트 읽기
$content = @file_get_contents('keyWords.txt');
//배열로 변환
$arr = 폭발("n", $content);
// 순회 감지
for($i=0,$k=count($arr);$i<$k;$i ){
// 이 배열 요소가 비어 있으면 이 루프를 건너뜁니다.
if($arr[$i]==''){
계속하다
}
// 키워드가 감지되면 일치하는 키워드를 반환하고 작업을 종료합니다
if(@strpos($str,trim($arr[$i]))!==false){
//$i=$k
$arr[$i];
반환
}
}
// 검색된 키워드가 없으면 false를 반환합니다.
false를 반환합니다.
}
$content = '게시할 텍스트 내용은 다음과 같습니다. . . ';
// 키워드 필터링
$keyWord = keyWordCheck($content);
// 키워드가 존재하는지 확인
if($keyWord){
echo '게시한 콘텐츠에 키워드가 포함되어 있습니다.'.$keyWord;
}그밖에{
에코 '축하해요! 키워드 감지를 통해';
// 다음으로 라이브러리 쓰기 작업을 수행하여 게시 작업을 완료할 수 있습니다.
}
예시 2(참고: 중국어 키워드 필터링에 사용되는 키워드 파일은 utf-8로 인코딩되어 있습니다.)
/**
* 금지 키워드 감지
*
* @param string $string 감지할 문자열
* @param string $fileName 마스크 키워드 파일
* @return 부울
*/
함수 banwordCheck( $string, $fileName )
{
if ( !($words = file_get_contents( $fileName )) ){
die('파일 읽기 오류!');
}
$string = strtolower($string);
$matched = preg_match('/'.$words.'/i', $string, $result);
if ( $matched && isset($result[0]) && strlen($result[0]) > 0 )
{
if ( strlen($result[0]) == 2 ){
$matched = preg_match('/'.$words.'/iu', $string, $result);
}
if ( $matched && isset($result[0]) && strlen($result[0]) > 0 ) {
true를 반환합니다.
}그밖에{
false를 반환합니다.
}
}그밖에{
false를 반환합니다.
}
}
$content = '테스트 키워드';
if ( banwordCheck($content, './banwords.txt') ){
echo "일치합니다!";
}그밖에{
echo "일치하지 않습니다!";
}
이 기사가 모든 사람의 PHP 프로그래밍 설계에 도움이 되기를 바랍니다.