Forum und email


(PHP 4, PHP 5)

strpos — Find position of first occurrence of a string


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() before PHP 5, this function can take a full string as the needle parameter and the entire string will be used.




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 .

Return Values

Returns the position as an integer. If needle is not found, strpos() will return boolean FALSE.


This function may return Boolean FALSE, but may also return a non-Boolean value which evaluates to FALSE, such as 0 or "". Please read the section on Booleans for more information. Use the === operator for testing the return value of this function.


Example#1 strpos() examples

$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) {
"The string '$findme' was not found in the string '$mystring'";
} else {
"The string '$findme' was found in the string '$mystring'";
" 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


Note: This function is binary-safe.