PHP의 strpbrk() 함수는 문자열 안에서 지정한 문자 목록(charlist) 중 하나라도 일치하는 문자를 찾을 때 사용합니다. 일치하는 문자를 처음 발견한 위치부터 문자열 끝까지의 부분 문자열을 반환하며, 일치하는 문자가 없으면 false를 반환합니다.
문법
strpbrk(str, charlist)
매개변수
str − 검색 대상이 되는 원본 문자열입니다.
charlist − 찾고자 하는 문자들을 이어서 나열한 목록입니다.
반환 값
일치하는 문자를 처음 찾은 위치부터 시작하는 나머지 문자열을 반환합니다. 문자열 내에서 일치하는 문자를 하나도 찾지 못하면 false를 반환합니다.
예제
다음 예제는 "malayalam" 문자열에서 "y" 또는 "k" 문자를 검색합니다.
<?php
echo strpbrk("malayalam", "yk");
?>
출력 결과
yalam
charlist에 포함된 문자 중 "k"보다 먼저 등장하는 "y"가 발견된 위치부터 끝까지의 문자열인 "yalam"이 출력됩니다.
예제 – 대소문자 구분 확인
다음 예제를 통해 strpbrk() 함수의 대소문자 구분 특성을 확인해 보겠습니다.
<?php
echo strpbrk("DEMO Text", "epl");
?>
출력 결과
ext
strpbrk() 함수는 대소문자를 엄격하게 구분합니다. 따라서 charlist의 소문자 "e"는 앞부분의 대문자 "DEMO"와는 일치하지 않으며, 뒤쪽 "Text"에 있는 소문자 "e"와만 일치합니다. 그 결과 일치 위치부터 끝까지인 "ext"가 반환됩니다.
정리
strpbrk()는 charlist에 나열된 여러 문자 중 가장 먼저 등장하는 하나를 기준으로 검색합니다.
반환값은 일치 위치부터 끝까지의 부분 문자열이며, 실패 시 false를 반환합니다.
대소문자를 구분하므로, 대소문자 무관 검색이 필요하면 stripos()나 정규식 등 다른 방법을 고려해야 합니다.