Encodera

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.

Справочник PHP

mb_strpos

Находит позицию первого вхождения подстроки.

Доступно с: PHP 4

Синтаксис

mb_strpos(string $haystack, string $needle, int $offset = 0, ?string $encoding = null): int|false

Параметры

ПараметрТипОписание
$haystackstringСтрока, в которой выполняется поиск.
$needlestringПодстрока, которую нужно найти.
$offsetintС какой позиции начинать поиск.
$encoding?stringКодировка. По умолчанию — внутренняя, обычно UTF-8.

Возвращаемое значение

int|falseПозиция вхождения, счёт с нуля, или `false`, если подстрока не найдена.

Примеры

Позиция найденной подстроки:

<?php
 
var_dump(mb_strpos('Привет, мир', 'мир'));

Результат:

int(8)

Если подстроки нет, возвращается false:

<?php
 
var_dump(mb_strpos('Привет, мир', 'PHP'));

Результат:

bool(false)

Позиция 0 при нестрогом сравнении тоже выглядит как false, поэтому сравнивать нужно строго:

<?php
 
$position = mb_strpos('PHP', 'P');
 
var_dump($position === false);
var_dump($position == false);

Результат:

bool(false)
bool(true)

Примечания

Результат всегда сравнивайте с false через ===. Если нужно только узнать, есть ли подстрока, проще взять str_contains().

См. также

  • str_contains — Проверяет, содержит ли строка заданную подстроку.
  • mb_substr — Возвращает часть строки.

Вопросы и ответы по теме

В учебнике

  • Строки — Работа со строками в PHP — кавычки, склейка, длина, поиск, замена и функции для кириллицы.

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.