PHP의 mb_strripos() 함수는 하나의 문자열(대상 문자열) 안에서 다른 문자열(검색 문자열)이 마지막으로 나타나는 위치를 찾는 데 사용됩니다. 이 함수는 대소문자를 구분하지 않으며, 문자 수를 기준으로 멀티바이트에 안전한(multi-byte safe) strripos() 연산을 수행합니다. 따라서 한글이나 일본어처럼 한 글자가 여러 바이트로 표현되는 UTF-8 환경에서도 정확한 결과를 얻을 수 있습니다.
함수는 대상 문자열(haystack)의 시작 지점부터 검색 문자열(needle)이 마지막으로 등장하는 위치를 숫자로 반환합니다.
문법(Syntax)
integer mb_strripos( $str_haystack, $str_needle, $integer_offset = 0, $str_encoding )
매개변수(Parameters)
mb_strripos() 함수는 다음 네 가지 매개변수를 받습니다.
str_haystack − 검색 문자열(needle)이 마지막으로 나타나는 위치를 찾을 대상이 되는 문자열입니다.
str_needle − 대상 문자열(haystack) 안에서 찾고자 하는 문자열입니다.
integer_offset − 검색을 시작할 대상 문자열 내의 위치(오프셋)입니다. 기본값은 0이며, 문자열의 처음부터 검색을 시작합니다.
str_encoding − 사용할 문자 인코딩의 이름입니다. 이 값을 생략하면 PHP 설정에 지정된 내부 인코딩(internal encoding)이 사용됩니다.
반환값(Return Values)
이 함수는 주어진 대상 문자열(haystack)에서 검색 문자열(needle)이 마지막으로 나타나는 숫자 위치를 반환합니다. 만약 검색 문자열을 찾지 못하면 False를 반환합니다.
예제(Example)
<?php
// UTF-8 인코딩 사용
// 검색 문자열: "Wo"
// 대상 문자열: "Hello World"
$string = mb_strripos("Hello World", "Wo", 0, "UTF-8");
// 결과 출력
var_dump($string);
?>실행 결과(Output)
int(6)
위 예제에서 "Hello World" 문자열 안에서 "Wo"가 마지막으로 나타나는 위치는 인덱스 6이므로, 함수는 int(6)을 반환합니다. 참고로 PHP에서 문자열 위치는 0부터 시작하므로, 여섯 번째 문자가 아닌 일곱 번째 문자에 해당한다는 점도 함께 기억해 두면 좋습니다.