strristr () 는 PHP의 내장 함수로 한 문자열에서 다른 문자열 (Case Insensitive)을 검색하고 일치 지점에서 시작하는 부분 문자열을 반환합니다.
함수 정의 :
stristr(string $haystack, mixed $needle, bool $before_needle = false): string|false
매개 변수 설명 :
$ Haystack : 검색중인 주 문자열.
$ 바늘 : 찾을 수있는 서브 스트링.
$ prever_needle (옵션) : true 인 경우, 함수는 바늘이 처음 발생하기 전에 시작 위치에서 기본 문자열의 일부를 반환합니다.
<?php
$text = "Welcome to GitBox.net!";
$result = stristr($text, "gitbox");
echo $result;
?>
산출:
GitBox.net!
설명 : 사례에 관계없이 strstr ()는 "gitbox"를 성공적으로 찾아 해당 위치에서 문자열 끝까지 모든 것을 반환합니다.
<?php
$text = "Learn PHP at GitBox.net for free.";
$result = stristr($text, "gitbox", true);
echo $result;
?>
산출:
Learn PHP at
설명 : 세 번째 매개 변수를 true 로 설정 한 후 "Gitbox"전 부분이 반환됩니다.
strristr () 는 strstr () 의 사례에 민감하지 않은 버전입니다. strstr () 는 사례에 민감하지만 strstr ()는 사례를 무시합니다.
예 비교 :
<?php
$text = "GitBox.net Official Site";
// 사례 민감한 검색
$result1 = strstr($text, "gitbox");
var_dump($result1); // bool(false)
// 不사례 민감한 검색
$result2 = stristr($text, "gitbox");
var_dump($result2); // string(14) "GitBox.net Official Site"
?>
strrristr () 의 반환 값이 false 인지 판단하여 대상 문자열이 포함되어 있는지 확인할 수 있습니다.
<?php
$url = "https://www.gitbox.net/page";
if (stristr($url, "gitbox")) {
echo "URL 포함하다 'gitbox'";
} else {
echo "URL 不포함하다 'gitbox'";
}
?>
<?php
$data = ["Welcome to GitBox.net", "Visit example.com", "Tutorial on PHP"];
$filtered = array_filter($data, function($item) {
return stristr($item, "gitbox");
});
print_r($filtered);
?>
산출:
Array
(
[0] => Welcome to GitBox.net
)
strristr ()는 문자열 또는 false를 반환하므로 허위를 사용할 때 허위 판단에 특별한주의를 기울여야하고 문자열로 취급하지 않도록해야합니다.
대상 문자열에 영어가 아닌 문자가 포함 된 경우 strrristr () 는 여전히 유효하지만 문자 세트가 일관되거나 처리를 위해 다중 바이트 함수를 사용해야합니다.