(PHP 4 >= 4.0.5, PHP 5, PHP 7, PHP 8)
iconv — Convertit une chaîne dans un jeu de caractères
$from_encoding
, string $to_encoding
, string $string
) : string|false
Convertit la chaîne string
depuis le jeu de
caractères from_encoding
vers le jeu
de caractères to_encoding
.
from_encoding
Le jeu de caractères d'entrée.
to_encoding
Le jeu de caractères de sortie.
Si vous ajoutez la chaîne //TRANSLIT
au paramètre
to_encoding
, la translittération est activée.
Cela signifie que lorsqu'un caractère ne peut être représenté dans le jeu
de caractères cible, il peut être représenté approximativement à partir
d'un ou plusieurs caractères représentant le même caractère.
Si vous ajoutez la chaîne //IGNORE
, les caractères qui
ne peuvent être représentés dans le jeu de caractères cible sont
tout simplement ignorés. Sinon, une alerte de niveau
E_NOTICE
sera générée et la fonction retournera
false
.
Si et comment //TRANSLIT
fonctionne exactement dépend
de l'implémentation iconv() du système (cf. ICONV_IMPL
).
Certaines implémentation sont connues pour ignorer //TRANSLIT
,
donc la conversion échouera probablement pour les caractères qui sont
illégal pour to_encoding
.
string
La chaîne de caractères à convertir.
Retourne la chaîne de caractères convertie ou false
si une erreur survient.
Exemple #1 Exemple avec iconv()
<?php
$text = "Ceci est le symbole de l'Euro '€'.";
echo 'Original : ', $text, PHP_EOL;
echo 'TRANSLIT : ', iconv("UTF-8", "ISO-8859-1//TRANSLIT", $text), PHP_EOL;
echo 'IGNORE : ', iconv("UTF-8", "ISO-8859-1//IGNORE", $text), PHP_EOL;
echo 'Brut : ', iconv("UTF-8", "ISO-8859-1", $text), PHP_EOL;
?>
Résultat de l'exemple ci-dessus est similaire à :
Original : Ceci est le symbole de l'Euro '€'. TRANSLIT : Ceci est le symbole de l'Euro 'EUR'. IGNORE : Ceci est le symbole de l'Euro ''. Brut : Ceci est le symbole de l'Euro ' Notice: iconv(): Detected an illegal character in input string in /Users/macbook/Desktop/- on line 8 Ceci est le symbole de l'Euro '