grapheme_extract
(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)
grapheme_extract — Extrait un groupe de graphème d'une chaîne UTF-8
Description
Style procédural
$haystack
, int $size
[, int $extract_type
[, int $start
= 0
[, int &$next
]]] )Cette fonction extrait une séquence de groupes de graphèmes par défaut d'un texte en UTF-8.
Liste de paramètres
-
haystack
-
La chaîne à étudier.
-
size
-
Le nombre maximal d'élément, en fonction de $extract_type, à retourner.
-
extract_type
-
Définit le type d'unités indiquées par le paramètre $size :
- GRAPHEME_EXTR_COUNT (par défaut) : $size est le nombre de groupe de graphèmes à extraire.
- GRAPHEME_EXTR_MAXBYTES : $size est le nombre d'octets à retourner.
- GRAPHEME_EXTR_MAXCHARS : $size est le nombre de caractères UTF-8 à retourner.
-
start
-
La position de début dans $haystack, exprimée en octets. Elle doit être positive, nulle ou inférieure à la taille de $haystack en octets. Si $start ne correspond pas au premier octets d'un caractère UTF-8 valide, la position de démarrage sera déplacée au prochain octet valide.
-
next
-
Référence à une variable qui recevra la prochaine position de début valide. Lorsque la fonction se termine, cela peut être une position qui est au dela de la taille de la chaîne.
Valeurs de retour
Une chaîne qui débute à la position $start et se termine à la limite valide d'un graphème, et qui se conformen aux conditions $size et $extract_type.
Exemples
Exemple #1 Exemple avec 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));
?>
L'exemple ci-dessus va afficher :
o%CC%88
Voir aussi
- grapheme_substr() - Retourne une partie d'une chaîne
- » Unicode Text Segmentation: Grapheme Cluster Boundaries