Documentación offline PHP master

grapheme_extract

master Ver versión oficial en línea Licencia CC-BY-3.0Descargado el 2026-08-02

En esta página

grapheme_extract

Extrae un grupo de grafemas de una cadena UTF-8

Descripción#

Estilo procedimental

grapheme_extract(string $haystack, int $size, [int $type], [int $offset], [int $next]): string
```php

Esta función extrae una secuencia de grupos de grafemas por defecto de un texto en UTF-8.

## Parámetros

`haystack`  
La cadena a estudiar.

`size`  
El número máximo de elementos, en función de `type`, a devolver.

`type`  
Define el tipo de unidades indicadas por el parámetro `size`:

GRAPHEME_EXTR_COUNT (por defecto): `size` es el número de grupos de grafemas a extraer., GRAPHEME_EXTR_MAXBYTES: `size` es el número de bytes a devolver., GRAPHEME_EXTR_MAXCHARS: `size` es el número de caracteres UTF-8 a devolver.

`offset`  
La posición de inicio en `haystack`, expresada en bytes. Debe ser positiva, nula o inferior al tamaño de `haystack` en bytes, o un valor negativo, que contaría desde el final de `haystack`. Si `offset` no corresponde al primer byte de un carácter UTF-8 válido, la posición de inicio será desplazada al siguiente byte válido.

`next`  
Referencia a una variable que recibirá la próxima posición de inicio válida. Cuando la función termina, esto puede ser una posición que está más allá del tamaño de la cadena.

## Valores devueltos

Una cadena que comienza en la posición `offset` y termina en el límite válido de un grafema, y que se ajusta a las condiciones `size` y `type` especificadas, o `false` si ocurre un error.

## Historial de cambios

| Versión | Descripción                                              |
|---------|----------------------------------------------------------|
| 7.1.0   | Se añadió el soporte para valores negativos en `offset`. |

## Ejemplos

Ejemplo con `grapheme_extract`

```php

El ejemplo anterior mostrará:

o%CC%88

Véase también#

grapheme_substr, Unicode Text Segmentation: Grapheme Cluster Boundaries