mb_strstr()
mb_strstr() — Finds first occurrence of a string within another.
Built-in function of PHP 8.5. The manual lists it as available in PHP 5 >= 5.2.0, PHP 7, PHP 8. This page is the reference card: signature, parameters and return value, plus the changelog and the example the manual provides.
What it does
mb_strstr() finds the first occurrence of needle in haystack and returns the portion of haystack. If needle is not found, it returns false.
Signature
mb_strstr(string $haystack, string $needle, bool $before_needle = false, ?string $encoding = null): string|false
Parameters
| Parameter | Type | What it takes |
|---|---|---|
| $haystack | string | The string from which to get the first occurrence of needle |
| $needle | string | The string to find in haystack |
| $before_needle | bool | Determines which portion of haystack this function returns. If set to true, it returns all of haystack from the beginning to the first occurrence of needle (excluding needle). If set to false, it returns all of haystack from the first occurrence of needle to the end (including needle). |
| $encoding | ?string | The encoding parameter is the character encoding. If it is omitted or null, the internal character encoding value will be used. |
Return value
Returns the portion of haystack, or false if needle is not found.
Example
The PHP manual ships no example for mb_strstr(); the signature and the parameter table above are the contract.
Changelog
| Version | Change |
|---|---|
| 8.3.2 | On invalid strings (those with encoding errors) and on SJIS-mac (MacJapanese) strings, the portion of haystack returned when before_needle is true is now determined from the same character indices as the other mbstring functions. |
| 8.0.0 | needle now accepts an empty string. |
| 8.0.0 | encoding is nullable now. |
| 8.0.0 | Now throws a ValueError if encoding is an invalid encoding. Previously, an E_WARNING was emitted and false was returned. |
See also
stristr(), strstr(), mb_stristr()
All PHP 8.5 built-in functions
Reference card built from the PHP manual page mb_strstr() (PHP documentation, CC BY 3.0). The page is generated from the manual, so the wording of the parameter and return value text follows php.net.