PHP strpos() and stripos() Functions
Last Updated :
09 May, 2022
In this article, we will see how to find the position of the first occurrence of a string in another string using strpos() and stripos() Functions in PHP, & will see their implementation through the examples.
Both the strpos() and stripos() Functions in PHP are binary-safe which means the function will handle its input as a raw byte stream and disregard every textual content it may contain. Here, the function will work correctly while passing arbitrary binary data ie., a string having non-ASCII bytes &/or null-bytes.
strpos() Function: This function helps us to find the position of the first occurrence of a string in another string. This returns an integer value of the position of the first occurrence of the string. This function is case-sensitive, which means that it treats upper-case and lower-case characters differently.
Syntax:
strpos(original_str, search_str, start_pos);
Parameter value: Out of the three parameters specified in the syntax, two are mandatory and one is optional. The three parameters are described below:
- original_str: This is a mandatory parameter that refers to the original string in which we need to search the occurrence of the required string.
- search_str: This is a mandatory parameter that refers to the string that we need to search.
- start_pos: This is an optional parameter that refers to the position of the string from where the search must begin.
Return Type: This function returns an integer value that represents the index of original_str where the string search_str first occurs.
Example: This example illustrates the strpos() function that specifies the position of the occurrence of a string in another string.
PHP
<?php
// PHP code to search for a specific string's position
// first occurrence using strpos() case-sensitive function
function Search($search, $string)
{
$position = strpos($string, $search, 5);
if (is_numeric($position))
{
return "Found at position: " . $position;
}
else
{
return "Not Found";
}
}
// Driver Code
$string = "Welcome to GeeksforGeeks";
$search = "Geeks";
echo Search($search, $string);
?>
Output:
Found at position 11
stripos() Function: This function also helps us to find the position of the first occurrence of a string in another string. This returns an integer value of the position of the first occurrence of the string. This function is case-insensitive, which means it treats both upper-case and lower-case characters equally. This function works similarly as strpos(), the difference is that it is case in-sensitive whereas strpos() is case sensitive.
Syntax:
stripos(original_str, search_str, start_pos);
Parameter value: Out of the three parameters specified in the syntax, two are mandatory and one is optional.
- original_str: This is a mandatory parameter that refers to the original string in which we need to search the occurrence of the required string.
- search_str: This is a mandatory parameter that refers to the string that we need to find.
- start_pos: This is an optional parameter that refers to the position of the string from where the search must begin.
Return Type: This function returns an integer value that represents the index of original_str where the string search_str first occurs.
Example: This example illustrates the stripos() function that specifies the position of the occurrence of a string in another string.
PHP
<?php
// PHP code to search for a specific string
// first occurrence using stripos() case-insensitive function
function Search($search, $string)
{
$position = stripos($string, $search, 5);
if ($position == true)
{
return "Found at position " . $position;
}
else
{
return "Not Found";
}
}
// Driver Code
$string = "Welcome to GeeksforGeeks";
$search = "geeks";
echo Search($search, $string);
?>
Output:
Found at position 11
Let us understand these functions in a tabular form -:
| strpos() | stripos() |
1. | The strpos() function finds the position of the first occurrence of a string inside another string. | The stripos() function finds the position of the first occurrence of a string inside another string. |
2. | It is case-sensitive function. | It is case-insensitive function. |
3. |
Its syntax is -:
strpos(string,find,start)
|
Its syntax is -:
stripos(string,find,start)
|
4. | This function returns the position of the first occurrence of a string inside another string else it returns false if the string does not found. | It returns the position of the first occurrence of a string inside another string else it returns false if the string does not found. |
5. | It is supported in PHP version 4.0+ | It is supported in PHP version 5.0+ |