(PHP 4, PHP 5, PHP 7, PHP 8)
strstr — Находит первое вхождение подстроки
$haystack
, string $needle
, bool $before_needle
= false
): string|false
Возвращает подстроку строки haystack
, начиная с
первого вхождения needle
(и включая его) и до конца строки
haystack
.
Замечание:
Эта функция учитывает регистр символов. Для поиска без учёта регистра используйте stristr().
Замечание:
Если нужно лишь определить, встречается ли подстрока
needle
вhaystack
, используйте более быструю и менее ресурсоёмкую функцию strpos().
haystack
Входная строка.
needle
Строка для поиска.
До PHP 8.0.0, если параметр needle
не является строкой,
он преобразуется в целое число и трактуется как код символа.
Это поведение устарело с PHP 7.3.0, и полагаться на него крайне не рекомендуется.
В зависимости от предполагаемого поведения,
параметр needle
должен быть либо явно приведён к строке,
либо должен быть выполнен явный вызов chr().
before_needle
Если установлен в true
, strstr() возвращает
часть строки haystack
до первого вхождения
needle
(исключая needle).
Возвращает часть строки или false
, если needle
не найдена.
Версия | Описание |
---|---|
8.0.0 |
Параметр needle теперь допускает пустую строку.
|
8.0.0 |
Передача целого числа (int) в needle больше не поддерживается.
|
7.3.0 |
Передача целого числа (int) в needle объявлена устаревшей.
|
Пример #1 Пример использования strstr()
<?php
$email = 'name@example.com';
$domain = strstr($email, '@');
echo $domain; // выводит @example.com
$user = strstr($email, '@', true);
echo $user; // выводит name
?>