(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)
grapheme_substr — Retourne une partie d'une chaîne
Procedural style
Retourne une partie d'une chaîne.
La chaîne à couper. Doit être UTF-8 et valide.
La position de début, en unité par de graphèmes. Si $start est non-négatif, la chaîne retournée va commencer à la position $start dans la chaîne, en comptant à partir de 0. Si $start est négatif, la chaîne retournée va commencer à la position $start en comptant depuis la fin de la chaîne.
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 à $start (en fonction de la taille de la chaîne). Si $string est inférieur ou égal à $start graphèmes de long, FALSE sera retourné. Si $length a une valeur négative, 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 $start est aussi négatif). Si $start 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.
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