PHP: stripos - Manual

downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

stripslashes stripcslashes

Last updated: Sat, 27 Jan 2007

view this page in

# stripos

(PHP 5)

stripos -- Возвращает позицию первого вхождения подстроки без учета регистра

## Описание

int stripos ( string haystack, string needle [, int offset] )

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

`needle` должен содержать не менее одного символа.

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

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

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

`<?php
$findme = 'a';
$mystring1 = 'xyz';
$mystring2 = 'ABC';
$pos1 = stripos($mystring1, $findme);
$pos2 = stripos($mystring2, $findme);
// Конечно, 'a' не входит в 'xyz'
if ($pos1 === false) {
echo "Строка '$findme' не найдена в строке '$mystring1'";
}
// Заметьте, что используется ===. Использование == не даст верного
// результата, так как 'a' в нулевой позиции.
if ($pos2 !== false) {
echo "Нашел '$findme' в '$mystring2' в позиции $pos2";
}
?>`

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

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

> Замечание: Эта функция безопасна для обработки данных в двоичной форме.

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

add a note User Contributed Notes
stripos
dazzle
16-Aug-2006 07:20
`I recommend using the solution by rchillet for <PHP5
michiels solution is quite slow if you use it for long strings or call it many times.`
michiel at mb-it dot nl
10-Jul-2006 04:03
`Since the stripos-function is PHP5-only, the function below could give PHP4-users the same functionallity:
function stripos($string,$word)
{
$retval = false;
for($i=0;$i<=strlen($string);$i++)
{
if (strtolower(substr($string,$i,strlen($word))) == strtolower($word))
{
$retval = true;
}
}
return $retval;
}`
rchillet at hotmail dot com
28-Apr-2006 01:45
`improvement the function of heavyraptor with int offset parametre.
if (!function_exists("stripos")) {
function stripos($str,$needle,$offset=0)
{
return strpos(strtolower($str),strtolower($needle),$offset);
}
}`
heavyraptor
21-Mar-2006 06:59
`If you're using PHP < 5, you can use this alternate function, same thing like stripos:
<?php
if (!function_exists("stripos")) {
function stripos($str,$needle) {
return strpos(strtolower($str),strtolower($needle));
}
}
?>
Such a logical function but I hope it helps ...`
sim
02-Oct-2004 10:17
`Just to be explicit, the position index returned by strpos starts at 0, not 1. e.g. strpos('abc','a') returns 0.`
aidan at php dot net
30-May-2004 10:36
`This functionality is now implemented in the PEAR package PHP_Compat.
More information about using this function without upgrading your version of PHP can be found on the below link:
http://pear.php.net/package/PHP_Compat`
add a note
stripslashes stripcslashes

Last updated: Sat, 27 Jan 2007
show source | credits | stats | sitemap | contact | advertising | mirror sites
Copyright © 2001-2007 The PHP Group
All rights reserved.
This mirror generously provided by: Yahoo! Inc.
Last updated: Sat Mar 10 10:36:09 2007 PST