utf8_decode
Convertit une chaîne UTF-8 en ISO-8859-1, en remplaçant les caractères invalides ou non représentables.
&warn.deprecated.function-8-2-0;
&reftitle.description;
#[\Deprecated]
stringutf8_decode
stringstring
utf8_decode décode la chaîne
string, en supposant qu'elle est au format
UTF-8, et la convertit au format
ISO-8859-1. Les octets dans la chaîne qui ne sont pas
valides en UTF-8 et les caractères UTF-8
qui n'existent pas en ISO-8859-1 (qui sont, les caractères
au-dessus de U+00FF) sont remplacés par ?.
De nombreuses pages Web marquées comme utilisant l'encodage de caratères
ISO-8859-1 utilisent effectivement un encodage similaire
à Windows-1252, et les navigateurs Web interpréterons
les pages Web ISO-8859-1 comme
Windows-1252. Les caractéristiques supplémentaires
de Windows-1252 sont des caractères imprimables,
tels que le signe euro (€) et les guillemets bouclés
(“ ”), à la place de certains
caractères de contrôle de l'ISO-8859-1. Cette fonction
ne convertira pas ces caractères Windows-1252
correctement. Utilisez une fonction différente si une conversion
Windows-1252 est nécessaire.
&reftitle.parameters;
string
La chaîne encodée UTF-8.
&reftitle.returnvalues;
Retourne la chaîne string convertie en ISO-8859-1.
&reftitle.changelog;
&Version;
&Description;
8.2.0
Cette fonction a été rendue obsolète.
7.2.0
Cette fonction a été déplacée dans le cœur de PHP ; auparavant, il était
nécessaire d'installer l'extension XML pour l'utiliser.
&reftitle.examples;
Exemple d'utilisation
]]>
&example.outputs;
Notes
Dépréciation et alternatives
Cette fonction est obsolète à partir de PHP 8.2.0
et sera supprimée dans une version future. Les utilisations existantes devraient être vérifiées
et remplacées par des alternatives appropriées.
Une fonctionnalité similaire peut être obtenue avec mb_convert_encoding,
qui prend en charge ISO-8859-1 et de nombreux autres encodages de caractères.
]]>
&example.outputs;
D'autres options peuvent être disponibles en fonction des extensions installées,
telles que UConverter::transcode et iconv.
Les exemples suivants donnent tous le même résultat :
]]>
&example.outputs;
En spécifiant '?' comme option 'to_subst' pour UConverter::transcode,
on obtient le même résultat que utf8_decode pour les chaînes qui sont invalides ou qui ne peuvent pas être représentées en ISO 8859-1.
'?']
);
var_dump($iso8859_1_string);
?>
]]>
&example.outputs;
&reftitle.seealso;
utf8_encode
mb_convert_encoding
UConverter::transcode
iconv