Функция возвращает строку haystack
с первого вхождения подстроки needle
включительно.
haystack
Строка, в которой выполняется поиск.
needle
Строка, которую требуется найти.
До PHP 8.0.0, если параметр needle
— не строка, он преобразовывается в целое число и трактуется как код символа. Это поведение устарело с PHP 7.3.0 и полагаться на него крайне не рекомендуется. В зависимости от предполагаемого поведения, параметр needle
должен быть либо явно приведён к строке, либо должен быть выполнен явный вызов функции chr().
before_needle
Если для параметра установили значение true
, функция stristr() возвращает часть «стога» haystack
, которая идёт перед первым вхождением «иголки» needle
, не включая «иголку».
Параметры needle
и haystack
обрабатываются без учёта регистра.
Функция возвращает совпавшую подстроку. Если функция не нашла подстроку needle
, возвращается false
.
Версия | Описание |
---|---|
8.2.0 | Приведение к единому регистру больше не зависит от настроек региональных установок, которые установили функцией setlocale(). Преобразовываются только символы кодировки ASCII. Байты, которые не относятся к кодировке ASCII, будут сравниваться по значению байта. |
8.0.0 | Параметр needle теперь разрешает пустую строку. |
8.0.0 | Передача целого числа (int) в параметр needle больше не поддерживается. |
7.3.0 | Передачу целого числа (int) в параметр needle объявили устаревшей. |
Пример #1 Пример использования функции stristr()
<?php
$email = 'USER@EXAMPLE.com';
echo stristr($email, 'e'); // Выводит: ER@EXAMPLE.com
echo stristr($email, 'e', true); // Выводит: US
?>
Пример #2 Проверка на вхождение строки
<?php
$string = 'Hello World!';
if (stristr($string, 'earth') === FALSE) {
echo 'Функция не нашла в строке подстроку «earth»';
}
// Выводит: Функция не нашла в строке подстроку «earth»
?>
Пример #3 Пример работы функции с нестроковой «иглой»
<?php
$string = 'APPLE';
echo stristr($string, 97); // 97 — кодовая точка Юникода для прописной буквы «a»
// Выводит: APPLE
?>
Замечание: Эта функция безопасна для обработки данных в двоичной форме.