(PHP 4, PHP 5, PHP 7, PHP 8)
strstr — Находит первое вхождение подстроки
Функция возвращает часть строки haystack
от начала первого вхождения подстроки needle
до конца строки haystack
.
Замечание:
Функция учитывает регистр символов. Для поиска без учёта регистра вызывают функцию stristr().
Замечание:
Вместо этой функции вызывают функцию str_contains(), которая ищет быстрее и с меньшим потреблением памяти, когда требуется только определить, встречается ли подстрока
needle
в строкеhaystack
.
haystack
Входная строка, в которой функция будет искать строку.
needle
Строка, которую функция будет искать.
До PHP 8.0.0 нестроковый аргумент needle
преобразовывался в целое число и заменялся на символ с этим порядковым значением в однобайтовой таблице символов.
Начиная с PHP 7.3.0 передача нестроковых значений устарела и полагаться на него настоятельно не рекомендуют.
Перед вызовом функции нестроковый аргумент needle
требовалось
либо приводить к строке, либо получать строковое значение символа функцией chr().
before_needle
Со значением true
функция strstr() возвращает
часть строки haystack
от начала входной строки
до первого вхождения подстроки 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, PHP_EOL; // Выводит: @example.com
$user = strstr($email, '@', true);
echo $user, PHP_EOL; // Выводит: name
?>