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() 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 found,
strpos() will return boolean FALSE.
Warning |
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. |
Note: This function is
binary-safe.
Example 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().