# mb_substr

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

mb_substr — Obtiene parte de una cadena de caracteres

### Descripción

mb_substr(
string `$str`,
int `$start`,
int `$length` = NULL,
string `$encoding` = mb_internal_encoding()
): string

Realiza una operación substr() multibyte de forma segura basada en el número de caracteres. La posición se cuenta desde el principio de `str`. La posición del primer carácter es 0. La posición del segundo es 1, etc.

### Parámetros

`str`

  El string de donde extraer la parte deseada.

`start`

  Si `start` no es negativo, el string devuelto comenzará en la posición `start`-ésima de `str`, empezando desde cero. Por ejemplo, en el string '`abcdef`', el carácter en la posición `0` es '`a`', el carácter en la posición `2` es '`c`', etc.

  Si `start` es negativo, el string devuelto comenzará en el `start`-ésimo carácter desde el final de `str`.

`length`

  El número máximo de caracteres a usar de `str`. Si se omite o se pasa `NULL`, extrae todos los caracteres hasta el final del string.

`encoding`

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

### Valores devueltos

mb_substr() devuelve una parte de `str` especificada por los parametros `start` y `length`.

### Historial de cambios

Versión | Descripción
--- | ---
5.4.8 | Pasar `NULL` al parámetro `length` extrae todos los caracteres hasta el final de string. Antes de esta versión, `NULL` era tratado de igual modo que `0`.

### Ver también

- mb_strcut() - Obtener parte de un string
- mb_internal_encoding() - Establece/obtiene la codificación de caracteres interna