>  기사  >  백엔드 개발  >  빠른 문자열 일치를 얻으려면 PHP8의 str_contains() 함수를 사용하십시오.

빠른 문자열 일치를 얻으려면 PHP8의 str_contains() 함수를 사용하십시오.

王林
王林원래의
2023-05-17 18:31:361807검색

인터넷이 발달하면서 문자열 처리는 프로그래밍의 일반적인 작업이 되었습니다. 문자열 일치 문제를 해결하기 위해 PHP8은 문자열에 지정된 문자열이 포함되어 있는지 여부를 신속하게 반환할 수 있는 새로운 함수 str_contains()를 도입했습니다. 이 기능은 문자열 매칭을 자주 수행해야 하는 개발자에게 매우 유용한 도구가 될 것입니다.

1. str_contains() 함수의 기본 사용법
str_contains() 함수는 문자열에 지정된 문자열이 포함되어 있는지 확인하는 데 사용됩니다.

bool str_contains( string $haystack , string $needle )
where, $haystack은 원본 문자열을 나타내고 $needle은 감지할 문자열을 나타냅니다. 원래 문자열에 지정된 문자열이 포함되어 있으면 함수는 true를 반환하고, 그렇지 않으면 false를 반환합니다.

다음은 몇 가지 예입니다.

예 1:

$str1 = "Hello World!";
if (str_contains($str1, "World")) {

echo "The string contains the word 'World'";

} else {

echo "The string does not contain the word 'World'";

}

The 이 예에서 $haystack은 "Hello World!"이고 $needle은 "World"입니다. $haystack에는 $needle이 포함되어 있으므로 함수는 true를 반환하고 "The string contain the word 'World'"라는 문자열을 인쇄합니다.

예제 2:

$str2 = "Hello World!";
if (str_contains($str2, "Universe")) {

echo "The string contains the word 'Universe'";

} else {

echo "The string does not contain the word 'Universe'";

}

$haystack은 이 예에서 " Hello World!", $needle은 "Universe"입니다. $haystack에는 $needle이 포함되어 있지 않으므로 함수는 false를 반환하고 "The string does not contain the word 'Universe'"라는 문자열을 인쇄합니다.

2. str_contains() 함수의 장점
이전에 PHP에는 문자열에서 하위 문자열을 찾아 해당 위치를 반환하는 데 사용되는 strstr() 및 strpos() 함수가 이미 있었습니다. 그러나 str_contains() 함수에는 다음과 같은 장점이 있습니다.

  1. 코드가 더욱 간결해졌습니다
    str_contains() 함수를 사용하면 문자열 일치 작업을 완료하는 데 코드 한 줄만 필요합니다. 예:

if (str_contains($str, "needle")) {

// Code to execute if the string contains "needle"

}

이에 비해 strstr() 또는 strpos() 함수를 사용할 때는 반환에 대한 if 조건부 판단을 수행해야 합니다. 그러면 일치 여부가 결정될 수 있습니다.

  1. 더 직관적인 코드
    str_contains() 함수의 이름은 매우 직관적이며, 그 사용은 프로그래머의 자연스러운 습관에 더 부합합니다. 다른 기능에 비해 이 기능을 사용하는 개발자는 적절한 매개변수 값을 찾기 위해 기능 문서를 읽을 필요가 없으며 직접 사용할 때 더 쉽게 인식할 수 있습니다.
  2. 더 높은 성능
    테스트 후 str_contains() 함수의 성능은 이전 문자열 일치 함수와 비슷하거나 훨씬 더 좋습니다. 대용량 데이터의 경우 str_contains() 함수는 내부 구현에서 보다 효율적인 알고리즘을 사용하므로 보다 빠른 매칭 속도를 제공할 수 있습니다.

3. str_contains() 함수를 사용하기 위해 프로젝트를 마이그레이션하는 방법
프로젝트에서 str_contains() 함수를 사용하려면 PHP 버전이 8.0 이상으로 업그레이드되었는지 확인해야 합니다. 업그레이드가 완료되면 프로젝트에서 strstr() 또는 strpos() 함수가 사용되는 위치를 수정해야 합니다.

우선, 프로젝트의 실제 상황을 바탕으로 업데이트가 필요한 위치를 선택해야 합니다. 많은 양의 코드에서 함수를 사용해야 하는 경우 검색 및 바꾸기 기능을 사용하여 이전 함수 호출을 새 함수 호출로 수정할 수 있습니다.

예를 들어 $strstr() 함수 호출을 변경합니다:

if (strstr($haystack, $needle)) {

// ...

}

$str_contains() 함수 호출로 변경:

if (str_contains($ haystack, $needle)) {

// ...

}

이러한 방식으로 프로젝트는 str_contains() 함수를 사용하여 시작할 수 있습니다.

4. 결론
str_contains() 함수는 PHP8에 도입된 문자열 일치 함수 중 하나이며 더 강력하고 사용하기가 더 간결합니다. 아직 strstr()이나 strpos() 함수를 사용하고 있다면, 필요하다면 적극적으로 str_contains() 함수로 마이그레이션하는 것이 좋습니다.

위 내용은 빠른 문자열 일치를 얻으려면 PHP8의 str_contains() 함수를 사용하십시오.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.