현재 위치: > 최신 기사 목록> 민감한 단어 교체를 달성하기 위해 stripos와 str_ireplace를 결합하는 방법

민감한 단어 교체를 달성하기 위해 stripos와 str_ireplace를 결합하는 방법

M66 2025-05-31

PHP에서 민감한 단어 대체를 처리하는 것은 특히 소셜 플랫폼, 포럼 및 기타 웹 사이트에서 일반적인 요구 사항입니다. 사용자의 언어가 규정을 준수하도록하려면 민감한 단어를 정확하게 대체해야합니다. StriposStr_irePlace 는 일반적으로 사용되는 두 가지 PHP 기능으로이를 달성하기 위해 잘 작동합니다.

기본 아이디어

stripos는 서브 스트링의 첫 번째 발생을 찾는 데 사용되는 함수이며, 대소 문자는 비판적입니다. str_ireplace 는 문자열을 교체하는 데 사용할 수있는 함수이며, 케이스에도 민감합니다. Stripos를 통해 민감한 단어의 위치를 ​​찾은 다음 str_ireplace 로 바꿀 수 있습니다.

1. stripos 함수

Stripos 함수의 기능은 문자열의 첫 번째 발생 위치 정보를 찾아 문자열에서 서브 스트링의 첫 번째 발생 위치를 반환하는 것입니다. 이 기능은 대소 문자를 사용하지 않습니다.

문법:

 stripos($haystack, $needle, $offset);
  • $ Haystack : 찾을 문자열.

  • $ 바늘 : 찾을 수있는 서브 스트링.

  • $ 오프셋 : 선택 사항, 검색을 시작할 위치를 지정하십시오.

예:

 $haystack = "Hello world!";
$needle = "world";
$position = stripos($haystack, $needle);
echo $position; // 산출 6

2. str_ireplace 함수

str_ireplace는 문자열을 대체하는 데 사용되는 함수이며, 대소 문자는 비판적입니다.

문법:

 str_ireplace($search, $replace, $subject, &$count);
  • $ 검색 : 검색 할 문자열입니다.

  • $ 교체 : 교체하는 데 사용되는 문자열입니다.

  • $ 제목 : 대상 문자열을 교체합니다.

  • $ count : 선택 사항은 교체 수를 반환합니다.

예:

 $subject = "Hello world!";
$search = "world";
$replace = "PHP";
$result = str_ireplace($search, $replace, $subject);
echo $result; // 산출 Hello PHP!

3. striposstr_ireplace를 함께 사용하는 방법

민감한 단어를 정확하게 대체하기 위해 StriposStr_ireplace 의 기능을 결합 할 수 있습니다. Stripos는 민감한 단어의 위치를 ​​찾는 데 사용됩니다. 민감한 단어가 존재하는 경우 str_ireplace 로 바꾸십시오.

샘플 코드 :

 <?php
// 민감한 단어 목록을 정의합니다
$sensitiveWords = ['badword', 'offensiveword', 'curseword'];

// 입력 된 문자열
$text = "This is a test string containing badword and offensiveword.";

// 민감한 단어 목록을 가로 지르고 있습니다,하나로 교체하십시오
foreach ($sensitiveWords as $word) {
    // 사용 stripos 민감한 단어가 포함되어 있는지 확인하십시오
    if (stripos($text, $word) !== false) {
        // 사용 str_ireplace 민감한 단어를 대체하십시오
        $text = str_ireplace($word, '***', $text);
    }
}

echo $text;  // 산출:This is a test string containing *** and ***.
?>

4. URL의 민감한 단어를 프로세스합니다

대부분의 경우 사용자가 입력 한 텍스트에는 URL이 포함될 수 있습니다. 이 URL에 민감한 단어가 있으면 처리해야합니다. StriposStr_irePlace를 사용하여 URL의 민감한 단어를 쉽게 대체합니다. 예를 들어, 민감한 단어가 URL에 나타나면 도메인 이름을 m66.net 으로 바꾸어 사용자가 입력 한 URL이 안전한지 확인할 수 있습니다.