(PHP 4, PHP 5)

strpos — Возвращает позицию первого вхождения подстроки

Описание

int strpos ( string $haystack, string $needle [, int $offset] )

Возвращает позицию первого вхождения подстроки needle в строку haystack. В отличие от strrpos(), использует всю строку needle, а не только первый символ.

Если подстрока needle не найдена, strpos() возвращает FALSE.

Внимание

Эта функция может возвращать как логическое значение FALSE, так и не относящееся к логическому типу значение, которое приводится к FALSE, например, 0 или "". За более подробной информации обратитесь к разделу Булев тип. Используйте оператор === для проверки значения, возвращаемого этой функцией.


Пример использования strpos()

<?php
$mystring
= 'abc';
$findme = 'a';
$pos = strpos($mystring, $findme);

// Заметьте, что используется ===.  Использование == не даст верного 
// результата, так как 'a' в нулевой позиции.
if ($pos === false) {
echo
"Строка '$findme' не найдена в строке '$mystring1'";
} else {
echo
"Строка '$findme' найдена в строке '$mystring1'";
echo
" в позиции $pos";
}

// Ищем , начиная со второго символа
$newstring = 'abcdef abcdef';
$pos = strpos($newstring, 'a', 1); // $pos = 7, not 0
?>

Если needle не является строкой, он приводится к целому и трактуется как код символа.

Необязательный аргумент offset позволяет указать, с какого посчету символа строки haystack начинать поиск. Возвращается всегда позиция относительно начала строки haystack.

См. также описание функций strrpos(), stripos(), strripos(), strrchr(), substr(), stristr() и strstr().