(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)
grapheme_substr — Retourne une partie d'une chaîne
Style procédural
Retourne une partie d'une chaîne.
stringLa chaîne à couper. Doit être UTF-8 et valide.
offset
Position de départ en unités de graphème par défaut.
Si offset est strictement positif, la chaîne renvoyée commencera à la
offset ème position dans string, en comptant
à partir de zéro. Si offset est négatif, la chaîne renvoyée commencera
à la offset ème unité de graphème à partir de la fin de la chaîne.
length
La taille de la sous-chaîne à extraire, en unités de graphème.
Si length est donné et positif, la chaîne
retournée va contenir au plus length
graphèmes, commençant à offset (en fonction
de la taille de la chaîne). Si length est
fourni et est négatif, alors autant de graphème seront omis à
partir de la fin de la chaîne (après que la position de début
ait été calculé, lorsque offset est aussi
négatif). Si offset dénote une position
au-delà de la fin de la chaîne,une chaîne vide sera retournée.
Retourne la partie de chaîne extraite de string, ou false si une erreur survient.
| Version | Description |
|---|---|
| 8.0.0 |
La fonction fixe désormais systématiquement les décalages hors limites à la limite
de la chaîne de caractères. Auparavant, false était retourné au lieu de la chaîne
vide dans certains cas.
|
Exemple #1 Exemple avec grapheme_substr()
<?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_substr( "ao" . $char_a_ring_nfd . "bc" . $char_o_diaeresis_nfd . "O", 2, -1 ));
?>L'exemple ci-dessus va afficher :
a%CC%8Abco%CC%88