PHP의 strstr() 함수는 문자열 안에서 특정 문자열이 처음 나타나는 위치를 찾는 데 사용됩니다. 검색 문자열이 발견되면 해당 지점부터 문자열 끝까지의 전체 내용을 반환합니다.
참고: strstr() 함수는 대소문자를 구분합니다. 대소문자 구분 없이 검색하려면 stristr() 함수를 사용해야 합니다.
구문 (Syntax)
strstr(str, search, before)
매개변수 (Parameters)
str — 검색 대상이 되는 원본 문자열입니다.
search — 찾고자 하는 문자열입니다. PHP 8.0부터 숫자도 전달할 수 있으며, 이 경우 해당 숫자를 ASCII 문자로 변환하여 검색합니다.
before — 기본값은 false인 불리언(Boolean) 값입니다. true로 설정하면 검색 문자열이 처음 나타나기 이전 부분만 반환합니다.
반환값 (Return)
- 검색에 성공하면: 검색 문자열이 시작되는 지점부터 끝까지의 나머지 문자열을 반환합니다. (before가 true일 경우 검색 위치 이전의 문자열 반환)
- 검색에 실패하면: false를 반환합니다.
예제 1: 기본 사용법
다음은 문자열에서 특정 문자가 처음 나타난 위치부터 출력하는 예제입니다.
<?php
echo strstr("Brad Pitt!", "a");
?>
출력 결과
ad Pitt!
위 예제에서 "a"가 처음 나타나는 위치는 세 번째 글자이므로, 그 지점부터 끝까지인 "ad Pitt!"이 출력됩니다.
예제 2: before 매개변수 활용
세 번째 매개변수를 true로 설정하면 검색 문자열 이전의 부분만 가져올 수 있습니다.
<?php
echo strstr("Brad Pitt!", "a", true);
?>
출력 결과
Br
"a" 앞에 있는 문자열만 반환되므로 "Br"이 출력됩니다.
활용 팁
- 이메일 주소에서 도메인 부분만 추출할 때 유용합니다. 예:
strstr($email, '@') - before 매개변수와 함께 사용하면 도메인 앞의 아이디 부분만 추출할 수 있습니다. 예:
strstr($email, '@', true) - 대소문자를 구분하지 않는 검색이 필요하다면
stristr()함수를 사용하세요.