(PHP 5 >= 5.2.0, PHP 7, PHP 8)

mb_stristrBusca la primera ocurrencia de un string dentro de otro, insensible a mayúsculas/minúsculas


    string $haystack,
    string $needle,
    bool $before_needle = false,
    string $encoding = mb_internal_encoding()
): string

mb_stristr() busca la primera ocurrencia de needle en haystack y devuelve la porción de haystack. A diferencia de mb_strstr(), mb_stristr() es insensible a mayúsculas/minúsculas. Si no se encuentra needle, devuelve false.



El string desde el que obtener la primera ocurrencia de needle


El string a buscar en haystack


Determina qué porción de haystack devuelve esta función. Si se establece a true, devuelve todo el haystack desde el comienzo de la primera ocurrencia de needle (excluyendo needle). Si se establece a false, Devuelve todo el haystack desde la primera ocurrencia de needle hasta el final (incluyendo needle).


El nombre de la codificación de caracteres a usar. Si se omite, se usará la codificación de caracteres interna.

Valores devueltos

Devuelve la porción de haystack, o false si no se encuentra needle.

Ver también

  • stristr() - strstr insensible a mayúsculas y minúsculas
  • strstr() - Encuentra la primera aparición de un string
  • mb_strstr() - Busca la primera ocurrencia de un string dentro de otro

add a note

User Contributed Notes 1 note

nowfel dot terki at mailfence dot com
2 years ago
Be aware that if needle is an empty string, mb_stristr return the haystack by default.

For exemple:

if (mb_stristr("foo", "")) {
"We enter in condition";

Because in the above exemple the return of mb_stristr is "foo".

So if we do not want this kind of behaviour, we must set the third argument, ($before_needle) to true.

if (mb_stristr("foo", "", true)) {
"We do not enter in condition";

It can be useful to know it, specially when needle is dynamic.
To Top