현재 위치: > 최신 기사 목록> 양식 컨텐츠 검토에서 stripos의 적용

양식 컨텐츠 검토에서 stripos의 적용

M66 2025-05-31

양식 제출에서 사용자는 때때로 부적절한 텍스트 또는 민감한 정보를 입력 할 수 있습니다. 플랫폼 컨텐츠의 건강과 보안을 보장하기 위해 PHP의 Stripos 기능을 사용하여 사용자 입력을 검색하고 필터링 할 수 있습니다. 이 기사에서는 StripOS 기능을 사용하여 Form Content Review에서 키워드 검색 및 필터링을 구현하고 예제를 제공하는 방법을 소개합니다.

1. 스크립스 함수 란 무엇입니까?

stripos는 문자열에서 서브 스트링의 첫 번째 발생을 찾는 데 사용되는 PHP의 함수입니다. 이 함수는 대소 문자를 사용하지 않으며 리턴 값은 하위 문자열이 처음 나타나는 위치이며 찾지 못하면 False를 반환합니다. 이 기능은 민감한 정보 나 키워드 검색을 수행 할 때 매우 유용합니다.

Stripos 기능의 기본 구문 :

 stripos($haystack, $needle, $offset);
  • $ haystack : 검색 할 문자열.

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

  • $ 오프셋 : (선택 사항) 오프셋이 설정되면 검색이 해당 위치에서 시작됩니다.

2. 키워드 검색에 stripos를 사용하십시오

Form Content를 검토하는 동안 Stripos를 사용하여 특정 민감한 키워드가 있는지 확인할 수 있습니다. 예를 들어, 사용자가 제출 한 양식에 특정 민감한 단어가 포함되어 있는지 여부를 찾고 있다고 가정 하고이 단어가 발견되면 사용자를 제출하거나 프롬프트 할 수 있습니다.

3. 샘플 코드 : 키워드 검색 및 필터링

다음은 Scripos 기능을 사용하여 사용자 제출 된 양식의 내용에 부적절한 어휘가 포함되어 있는지 여부를 감지하는 방법을 보여주는 간단한 예입니다.

 <?php
// 민감한 단어 목록을 정의합니다
$sensitiveWords = ['민감한 단어1', '민감한 단어2', '부적절한 콘텐츠'];

// 양식 입력 컨텐츠를 시뮬레이션합니다
$formInput = $_POST['user_input'] ?? '';

// 检查表单输入是否包含민감한 단어
foreach ($sensitiveWords as $word) {
    if (stripos($formInput, $word) !== false) {
        echo "경고하다:您的输入包含부적절한 콘텐츠,제출하기 전에 수정하십시오。";
        // 여기,양식 제출을 거부하거나 다른 처리를 수행하도록 선택할 수 있습니다.
        exit;
    }
}

// 양식 데이터를 계속 처리하십시오
echo "귀하의 양식이 성공적으로 제출되었습니다!";
?>

위의 코드에서는 민감한 단어 $ 민감한 단어 목록을 정의하고 사용자가 입력 한 양식 컨텐츠에 Scripos 함수를 통해 이러한 민감한 단어가 하나씩 포함되어 있는지 확인합니다. 일치가 발견되면 경고 메시지가 출력되고 처리가 종료됩니다. 민감한 단어가 없으면 양식이 정상적으로 제출됩니다.

4. URL 컨텐츠 필터링과 결합

때로는 양식 컨텐츠에 URL 링크가 포함될 수 있습니다. 또한 Stripos를 사용하여 URL에 부적절한 도메인 이름 또는 민감한 링크가 포함되어 있는지 확인할 수도 있습니다. 다음은 양식 컨텐츠에 특정 무단 URL이 포함되어 있는지 확인하는 예입니다.

 <?php
// 무단 도메인 이름 목록을 정의하십시오
$disallowedDomains = ['example.com', 'anotherexample.com'];

// 양식 입력 컨텐츠를 시뮬레이션합니다
$formInput = $_POST['user_input'] ?? '';

// 찾다URL도메인 이름
preg_match_all('/https?:\/\/([^\/]+)/', $formInput, $matches);

// 모든 일치하는 도메인 이름을 반복하십시오
foreach ($matches[1] as $domain) {
    if (in_array($domain, $disallowedDomains)) {
        echo "경고하다:입력에는 허용되지 않는 링크가 포함되어 있습니다({$domain})。제출하기 전에 수정하십시오。";
        exit;
    }
}

// 양식 데이터를 계속 처리하십시오
echo "귀하의 양식이 성공적으로 제출되었습니다!";
?>

이 예에서는 preg_match_all을 사용하여 모든 URL에서 도메인 이름을 추출한 다음 in_array를 사용하여 무단 도메인 이름이 있는지 확인합니다. 실제 요구에 따라 무단 도메인 이름 목록을 수정할 수 있습니다.

5. 주목할만한 것들

  • 성능 문제 : 형식 컨텐츠가 길거나 민감한 단어 목록이 매우 큰 경우 stripos 를 자주 사용하면 성능에 영향을 줄 수 있습니다. 현재 정규 표현식 또는 기타 최적화 전략을 사용하는 것을 고려할 수 있습니다.

  • 불완전한 일치 : Stripos는 문자열 검색을 기반으로하며 부분적 일치가있을 수 있습니다. 잘못 판단을 피하기 위해 격리를 위해 공백 또는 기타 특수 문자 전후에 민감한 단어를 추가 할 수 있습니다.

  • 향상된 사용자 경험 : 사용자가 입력 할 때 즉각적인 피드백을 원한다면 프론트 엔드 감지를 위해 JavaScript와 AJAX를 결합하여 사용자 경험을 향상시키는 것을 고려할 수 있습니다.