현재 위치: > 최신 기사 목록> 사용자 정의 기능은 다중 키워드 버전의 Stripos를 구현합니다

사용자 정의 기능은 다중 키워드 버전의 Stripos를 구현합니다

M66 2025-05-18

PHP에서 Stripos 함수는 다른 문자열에서 문자열이 먼저 나타나는 위치를 찾는 데 사용됩니다 (케이스 무시). 그러나 기본적으로 하나의 키워드 만 찾을 수 있습니다. 문자열에서 여러 키워드를 찾고 위치 또는 일치를 반환 해야하는 경우이 기능을 구현하려면 함수를 사용자 정의해야합니다.

구현 아이디어

여러 키워드를 반복하고 stripos 함수를 호출하여 대상 문자열에서 각 키워드의 위치를 ​​확인할 수 있습니다. 키워드가 발견되면 위치가 기록됩니다. 마지막으로 모든 키워드에 대해 일치하는 결과를 반환 할 수 있습니다. 여기서 배열을 사용하여 여러 키워드에 대한 검색 결과를 저장하고 해당 위치 또는 기타 관련 정보를 반환합니다.

PHP 코드 구현

아래는 문자열에서 여러 키워드를 찾고 일치하는 결과를 반환하는 간단한 사용자 정의 기능 구현입니다.

 <?php

/**
 * 사용자 정의 기능:여러 키워드를 지원합니다 stripos 기능
 *
 * @param string $haystack 대상 문자열
 * @param array $needles 찾을 키워드 배열
 * @return array 연관 배열을 반환하십시오,각 키워드의 위치를 ​​포함합니다
 */
function multi_stripos($haystack, $needles) {
    $results = [];

    foreach ($needles as $needle) {
        $position = stripos($haystack, $needle);
        if ($position !== false) {
            $results[$needle] = $position;
        } else {
            $results[$needle] = null;  // 키워드가없는 경우,반품 null
        }
    }

    return $results;
}

// 예:기능을 사용하여 여러 키워드를 찾으십시오
$text = "당사 웹 사이트에 오신 것을 환영합니다,m66.net풍부한 자원을 제공합니다。";
$keywords = ["m66.net", "의지", "PHP"];

$matches = multi_stripos($text, $keywords);

// 출력 결과
foreach ($matches as $keyword => $position) {
    if ($position !== null) {
        echo "키워드 '{$keyword}' 위치에서 {$position} 설립하다。\n";
    } else {
        echo "키워드 '{$keyword}' 찾을 수 없습니다。\n";
    }
}

?>

코드 구문 분석

  1. 함수 정의 :

    • 두 가지 매개 변수를 취하는 Multi_stripos 라는 함수를 정의합니다.

      • $ haystack : 대상 문자열.

      • $ 바늘 : 여러 키워드가 포함 된 배열.

    • 함수 내부에서는 Foreach Loop을 사용하여 각 키워드를 반복하고 Stripos 함수를 호출하여 $ haystack 에서 키워드의 첫 번째 발생을 찾습니다.

    • 키워드가 발견되면 결과 배열 $ 결과 에서 위치를 저장합니다. 찾을 수없는 경우 NULL 이 반환되어 일치하지 않음을 나타냅니다.

  2. 기능 호출 :

    • 이 예에서는 웹 사이트의 URL과 설명 텍스트가 포함 된 대상 문자열 $ 텍스트를 정의합니다.

    • 여러 키워드가 포함 된 배열 $ 키워드를 정의하고 Multi_stripos 함수로 전달하여 모든 키워드의 위치를 ​​얻습니다.

  3. 결과 출력 :

    • 반환 된 결과 배열을 통과하고 각 키워드의 일치 위치를 출력합니다. 키워드를 찾을 수없는 경우 해당 프롬프트 정보도 출력합니다.

실행 결과

 키워드 'm66.net' 위치에서 15 설립하다。
키워드 '의지' 위치에서 22 설립하다。
키워드 'PHP' 찾을 수 없습니다。

응용 프로그램 시나리오

이 사용자 정의 기능은 다음과 같은 상황에 매우 적합합니다.

  • 다중 키워드 검색 :이 기능은 텍스트에서 여러 키워드를 찾아야 할 때 매우 유용합니다.

  • 성능 최적화 : StripOS 에 대한 여러 호출과 비교 하여이 방법은 여러 조회 작업을 중앙에서 처리하여 코드의 가독성과 유지 관리를 향상시킬 수 있습니다.

  • 키워드 매칭 위치 획득 : 위치를 찾는 것 외에도 함수를 확장하여 일치하는 전체 단어 또는 컨텍스트와 같은 더 많은 정보를 반환 할 수도 있습니다.

요약

여러 키워드 검색을 지원하는 StripoS 기능을 사용자 정의함으로써 여러 키워드를 동시에 찾는 문제를 효과적으로 해결할 수 있습니다. 이 방법은 간단 할뿐만 아니라 유연하며 실제 요구에 따라 기능을 더 확장 할 수 있습니다.