Comment décoder les URL codées en UTF-8 au-delà de urldecode() en PHP ?

Susan Sarandon
Libérer: 2024-10-17 15:08:02
original
257 Les gens l'ont consulté

How to Decode UTF-8 Encoded URLs Beyond urldecode() in PHP?

Décodage d'URL en PHP : au-delà de urldecode()

La fonction urldecode() de PHP est un outil précieux pour décoder les chaînes codées en URL. Cependant, il peut échouer lorsque la chaîne est également codée en UTF-8.

Le problème :

Considérez la chaîne codée en URL suivante :

Ant%C3%B4nio+Carlos+Jobim
Copier après la connexion

Tenter de le décoder à l'aide de urldecode() donne le résultat suivant :

Antônio Carlos Jobim
Copier après la connexion

Au lieu du "Antônio Carlos Jobim" attendu.

La solution :

Pour résoudre ce problème, nous devons également décoder l'encodage UTF-8. La fonction utf8_decode() de PHP sert à cet effet :

echo utf8_decode(urldecode("Ant%C3%B4nio+Carlos+Jobim"));
Copier après la connexion

Cela affichera la chaîne correcte :

Antônio Carlos Jobim
Copier après la connexion

Explication :

Encodage d'URL consiste à remplacer certains caractères par leurs homologues hexadécimaux. Le codage UTF-8, en revanche, représente des caractères utilisant plusieurs octets, qui peuvent être interprétés à tort comme des codes hexadécimaux. En combinant utf8_decode() et urldecode(), nous pouvons décoder correctement les chaînes qui ont été codées aux formats UTF-8 et URL.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal