PHP 8.5.0 Alpha 1 available for testing

mb_strrpos

(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)

mb_strrposLocaliza la última ocurrencia de un carácter en una cadena

Descripción

mb_strrpos(
    string $haystack,
    string $needle,
    int $offset = 0,
    ?string $encoding = null
): int|false

mb_strrpos() realiza una búsqueda de tipo strpos(), teniendo en cuenta los caracteres multioctetos. La posición de needle se cuenta a partir del inicio de la cadena haystack: las posiciones comienzan en 0.

Parámetros

haystack

La cadena a analizar.

needle

La cadena a buscar en la cadena haystack.

offset
Debe ser especificado para comenzar la búsqueda un número arbitrario de caracteres en una cadena. Los valores negativos detienen la búsqueda en un punto arbitrario antes del final de la cadena.
encoding

El parámetro encoding es la codificación de caracteres. Si es omitido o null, será usado el valor de la codificación de caracteres interna.

Valores devueltos

Devuelve la posición numérica de la última ocurrencia del carácter needle en la cadena haystack. Si needle no es encontrado, mb_strrpos() devuelve false.

Historial de cambios

Versión Descripción
8.0.0 needle ahora acepta una cadena vacía.
8.0.0 Pasar encoding como tercer argumento en lugar de offset ha sido eliminado.
8.0.0 encoding ahora es nullable.

Ver también

  • mb_strpos() - Localiza la primera ocurrencia de un carácter en una cadena
  • mb_internal_encoding() - Lee/modifica la codificación interna
  • strrpos() - Busca la posición de la última ocurrencia de una subcadena en una cadena

add a note

User Contributed Notes 2 notes

up
1
Anonymous
19 years ago
mb_strrpos throws a warning if $haystack is empty.
strrpos simply returns FALSE.

This is something to be wary of if overloading the mb functions.
up
-2
Anonymous
10 years ago
"Negative values will stop searching at an arbitrary point prior to the end of the string. " ist misleading.
The needle may not fully part of searchrange, defined by a negative offset.
A negative offsets marks the last byte, where a search could start.
<?php
$test
= "Hallo, Herr Gött";
var_dump(strlen($test)); // int(17)
var_dump(mb_strrpos($test,'ött',13)); // int(13)
var_dump(mb_strrpos($test,'ött',-4)); // int(13) 17-4 = 13
var_dump(mb_strrpos($test,'ött',-5)); // bool(false)
?>
To Top