Heim > Backend-Entwicklung > PHP-Tutorial > Wie dekodiere ich UTF-8-kodierte URLs über urldecode() hinaus in PHP?

Wie dekodiere ich UTF-8-kodierte URLs über urldecode() hinaus in PHP?

Susan Sarandon
Freigeben: 2024-10-17 15:08:02
Original
290 Leute haben es durchsucht

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

URL-Dekodierung in PHP: Jenseits von urldecode()

PHPs urldecode()-Funktion ist ein wertvolles Werkzeug zum Dekodieren von URL-kodierten Zeichenfolgen. Dies kann jedoch zu kurz kommen, wenn die Zeichenfolge auch UTF-8-codiert ist.

Das Problem:

Betrachten Sie die folgende URL-codierte Zeichenfolge:

Ant%C3%B4nio+Carlos+Jobim
Nach dem Login kopieren

Der Versuch, es mit urldecode() zu dekodieren, führt zu folgender Ausgabe:

Antônio Carlos Jobim
Nach dem Login kopieren

Anstelle des erwarteten „Antônio Carlos Jobim.“

Die Lösung:

Um dieses Problem zu beheben, müssen wir auch die UTF-8-Kodierung dekodieren. Die Funktion utf8_decode() von PHP dient diesem Zweck:

echo utf8_decode(urldecode("Ant%C3%B4nio+Carlos+Jobim"));
Nach dem Login kopieren

Dadurch wird die richtige Zeichenfolge ausgegeben:

Antônio Carlos Jobim
Nach dem Login kopieren

Erklärung:

URL-Kodierung Dabei werden bestimmte Zeichen durch ihre hexadezimalen Gegenstücke ersetzt. Die UTF-8-Kodierung hingegen stellt Zeichen dar, die mehrere Bytes verwenden, was als Hex-Codes fehlinterpretiert werden kann. Durch die Kombination von utf8_decode() und urldecode() können wir Zeichenfolgen korrekt dekodieren, die sowohl im UTF-8- als auch im URL-Format kodiert wurden.

Das obige ist der detaillierte Inhalt vonWie dekodiere ich UTF-8-kodierte URLs über urldecode() hinaus in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage