array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'ru', ), 'this' => array ( 0 => 'function.stristr.php', 1 => 'stristr', ), 'up' => array ( 0 => 'ref.strings.php', 1 => 'Функции для работы со строками', ), 'prev' => array ( 0 => 'function.stripslashes.php', 1 => 'stripslashes', ), 'next' => array ( 0 => 'function.strlen.php', 1 => 'strlen', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'ru', 'path' => 'reference/strings/functions/stristr.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
Возвращает всю строку haystack
начиная с
первого вхождения needle
включительно.
haystack
Строка, в которой производится поиск
needle
Строка для поиска.
До PHP 8.0.0, если параметр needle
— не строка,
он преобразовывается в целое число и трактуется как код символа.
Это поведение устарело с PHP 7.3.0 и полагаться на него крайне не рекомендуется.
В зависимости от предполагаемого поведения,
параметр needle
должен быть либо явно приведён к строке,
либо должен быть выполнен явный вызов функции chr().
before_needle
Если установлен в true
, stristr()
возвращает часть строки haystack
до первого вхождения needle
(не включая 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
?>
Замечание: Эта функция безопасна для обработки данных в двоичной форме.