strpos

(PHP 3, PHP 4, PHP 5)

strpos --  Find position of first occurrence of a string

Description

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

Returns the numeric position of the first occurrence of needle in the haystack string. Unlike the strrpos(), this function can take a full string as the needle parameter and the entire string will be used.

If needle is not found, strpos() will return boolean FALSE.

警示

本函數可能返回布林值 FALSE,但也可能返回一個與 FALSE 等值的非布林值,例如 0 或是 ""。請參閱布爾類型章節以取得更多訊息。應使用 === 運算符來測試本函數的返回值。

注: 本函數可安全用於二進位對象。

例子 1. strpos() examples

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

// Note our use of ===.  Simply == would not work as expected
// because the position of 'a' was the 0th (first) character.
if ($pos === false) {
    echo 
"The string '$findme' was not found in the string '$mystring'";
} else {
    echo 
"The string '$findme' was found in the string '$mystring'";
    echo 
" and exists at position $pos";
}

// We can search for the character, ignoring anything before the offset
$newstring 'abcdef abcdef';
$pos strpos($newstring'a'1); // $pos = 7, not 0
?>

If needle is not a string, it is converted to an integer and applied as the ordinal value of a character.

The optional offset parameter allows you to specify which character in haystack to start searching. The position returned is still relative to the beginning of haystack.

See also strrpos(), stripos(), strripos(), strrchr(), substr(), stristr(), and strstr().