Функции за низове
PHP Manual

strpos

(PHP 4, PHP 5)

strposВръща позицията на първата поява на подниз

Описание

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

Връща позицията на първата поява на needle в низа haystack . За разлика от функцията strrpos() преди PHP 5, тази функция може да приеме цял низ за параметър needle като ще бъде използван целият.

Параметри

haystack

Низът в който се извършва търсенето

needle

Ако needle не е низ, се преобразува в целочислен вид и се третира като код на символа.

offset

Незадължителният параметър offset ви позволява да укажете от кой знак в haystack да започне търсенето. Върнатата позиция ще е все още от началото на haystack .

Връщани стойности

Връща позицията като число от тип integer. Ако низът needle не бъде открит, strpos() ще върне FALSE.

Предупреждение

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

Примери

Example #1 Употреба на ===

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

// Забележете употребата на оператора ===.  Обикновеното сравняване с оператора ==
// няма да работи както се очаква, тъй като позицията на 'a' е нулевият (първи) знак.
if ($pos === false) {
    echo 
"Низът '$findme' не беше открит в низа '$mystring'";
} else {
    echo 
"Низът '$findme'  беше открит в низа '$mystring'";
    echo 
" и започва от позиция $pos";
}
?>

Example #2 Употреба на !==

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

// Също така може да се използва оператора !==. Употренбата на != няма да има очакваният резултат,
// тъй като 'a' е на позиция 0. Изразът (0 != false)
// връща false.
if ($pos !== false) {
    echo 
"Низът '$findme' беше открит в низа '$mystring'";
        echo 
" и се намира на позиция $pos";
} else {
    echo 
"Низът '$findme' не беше открит в низа '$mystring'";
}
?>

Example #3 Използване на отместване

<?php
// Можем да търсим за знак, игнорирайки всичко преди зададено отместване
$newstring 'abcdef abcdef';
$pos strpos($newstring'a'1); // $pos = 7, а не 0
?>

Бележки

Забележка: Тази функция е двоично сигурна (binary-safe).

Вж. също


Функции за низове
PHP Manual