(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)
grapheme_extract — Extrae un grupo de grafemas de una cadena UTF-8
Estilo por procedimientos
$haystack
,$size
,$type
= GRAPHEME_EXTR_COUNT
,$offset
= 0,&$next
= null
Esta función extrae una secuencia de grupos de grafemas por defecto de un texto en UTF-8.
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
:
size
es el número
de grupos de grafemas a extraer.size
es el número de bytes a devolver.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.
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
en caso de error.
Versión | Descripción |
---|---|
7.1.0 |
Se añadió el soporte para valores negativos en offset .
|
Ejemplo #1 Ejemplo con grapheme_extract()
<?php
$char_a_ring_nfd = "a\xCC\x8A"; // 'LATIN SMALL LETTER A WITH RING ABOVE' (U+00E5) normalization form "D"
$char_o_diaeresis_nfd = "o\xCC\x88"; // 'LATIN SMALL LETTER O WITH DIAERESIS' (U+00F6) normalization form "D"
print urlencode(grapheme_extract( $char_a_ring_nfd . $char_o_diaeresis_nfd, 1, GRAPHEME_EXTR_COUNT, 2));
?>
El resultado del ejemplo sería:
o%CC%88