Strings stripos

(PHP 5, PHP 7, PHP 8)

stripos — 문자열에서 대소문자를 구분하지 않는 하위 문자열이 처음 나타나는 위치 찾기


설명

stripos(string $haystack, string $needle, int $offset = 0): int|false

haystack 문자열에서 needle이 처음 나타나는 숫자 위치를 찾습니다.

strpos()와 달리 stripos()는 대소문자를 구분하지 않습니다.


매개변수

haystack
검색할 문자열입니다.
needle
needle은 하나 이상의 문자로 구성된 문자열일 수 있습니다.

PHP 8.0.0 이전에는 needle이 문자열이 아닌 경우 정수로 변환되어 문자의 서수 값으로 적용되었습니다. 이 동작은 PHP 7.3.0부터 더 이상 사용되지 않으며 이에 의존하지 않는 것이 좋습니다. 의도한 동작에 따라 needle을 명시적으로 문자열로 캐스팅하거나 chr()에 대한 명시적 호출을 수행해야 합니다.

offset
지정된 경우 검색은 문자열의 시작 부분부터 계산된 이 문자 수만큼 시작합니다. 오프셋이 음수이면 문자열 끝에서 계산된 이 문자 수만큼 검색이 시작됩니다.

반환 값

haystack 문자열의 시작 부분을 기준으로 needle이 존재하는 위치를 반환합니다(오프셋과 무관). 또한 문자열 위치는 1이 아니라 0에서 시작합니다.

needle이 발견되지 않으면 false를 반환합니다.

경고 이 함수는 부울 false을 반환할 수 있지만 false으로 평가되는 부울이 아닌 값을 반환할 수도 있습니다. 자세한 내용은 Booleans 섹션을 참조하세요. 이 함수의 반환 값을 테스트하려면 the === operator를 사용하십시오.


변경 로그

버전 설명
8.0.0 int를 needle로 전달하는 것은 더 이상 지원되지 않습니다.
7.3.0 int를 needle로 전달하는 것은 더 이상 사용되지 않습니다.
7.1.0 음수 offset에 대한 지원이 추가되었습니다.

Examples

예제 #1 stripos() 예제

                  
<?php
$findme    = 'a';
$mystring1 = 'xyz';
$mystring2 = 'ABC';

$pos1 = stripos($mystring1, $findme);
$pos2 = stripos($mystring2, $findme);

// Nope, 'a' is certainly not in 'xyz'
if ($pos1 === false) {
    echo "The string '$findme' was not found in the string '$mystring1'";
}

// Note our use of ===.  Simply == would not work as expected
// because the position of 'a' is the 0th (first) character.
if ($pos2 !== false) {
    echo "We found '$findme' in '$mystring2' at position $pos2";
}
?>
                  
                

메모

참고: 이 함수는 binary-safe입니다.


기타

  • mb_stripos() - 대소문자를 구분하지 않고 다른 문자열 내에서 문자열이 처음 나타나는 위치를 찾습니다.
  • str_contains() - 문자열에 주어진 부분 문자열이 포함되어 있는지 확인
  • str_ends_with() - 문자열이 주어진 부분 문자열로 끝나는지 확인
  • str_starts_with() - 문자열이 주어진 부분 문자열로 시작하는지 확인
  • strpos() - 문자열에서 부분 문자열이 처음 나타나는 위치 찾기
  • strrpos() - 문자열에서 하위 문자열이 마지막으로 나타나는 위치 찾기
  • strripos() - 문자열에서 대소문자를 구분하지 않는 하위 문자열이 마지막으로 나타나는 위치 찾기
  • stristr() - 대소문자를 구분하지 않는 strstr
  • substr() - 문자열의 일부 반환
  • str_ireplace() - 대소문자를 구분하지 않는 str_replace 버전