Mailinglisten-Archive |
Axel Tietje schrieb am Freitag, den 12. März 1999: > Wie kann man Texte, die z. B. bei eMails > quoted-printable encoded worden sind, [...] > wieder decoden? PHP hat zwar (noch?) keine eigene Funktion dafür, aber netterweise ist die URL-Kodierung prinzipiell das Gleiche, nur daß dort "%xy" verwendet wird, statt "=xy" bei MIMEs quoted-printable. Also: Einfach alle "=xy" in "%xy" umwandeln und dann "urldecode"! Sonderregeln: - Ein Gleichheitszeichen ganz einsam am Zeilenende heißt bei q-p, daß es einfach in der nächsten Zeile weitergeht. - Originale Prozentzeichen selbst brauchen Sonderbehandlung, damit "urldecode" sie nicht verwurstelt. $text = "da=DF ber=FCcksichtigt w=E4re = schoen"; $text = eregi_replace("=(\n|$)", "", $text); $text = eregi_replace("%", "=25", $text); $text = eregi_replace("=([0-9a-f][0-9a-f])", "%\\1", $text); $text = urldecode($text); echo $text; Von mir aus auch: $text = "Da=DF MIME q-p ber=FCcksichtigt, w=E4re gut=\nhallo\n"; echo urldecode(eregi_replace("=([0-9a-f][0-9a-f])", "%\\1", eregi_replace("%", "=25", eregi_replace("=(\n|$)", "", $text)))); :-) Ciao, Martin -- Martin Ramsch <m.ramsch_(at)_computer.org> <URL: http://ramsch.home.pages.de/ > PGP: 0xE8EF4F75, 52 44 5E F3 B0 B1 38 26 E4 EC 80 58 7B 31 3A D7
php::bar PHP Wiki - Listenarchive