IMAP Funktionsliste - darstellen eines Mail-Body in UTF-8
Jurik
- php
0 Sven Rautenberg0 Jurik
Hallo Leute!
Ich habe ein Problem, den Mail-Body (z.B. Plain) mit dem Zeichensatz UTF-8 fehlerfrei darzustellen. Die Funktionsdokumentation von PHP hat mir auch nicht wirklich bei dem Problem geholfen.
Ich benutze folgenden Syntax:
$imap = imap_open('{'.$postfach.'/pop3}INBOX', $username, $password);
$body_plain = imap_fetchbody($imap,<mail-nummer>,'1'); //1 ist in dem Fall der Plain Text
echo nl2br(imap_utf8($body_plain));
auf=20diese=20E-Mail.=20Wir=20k=F6nnen=20dann
mit=20dem=20Austausch=20von=
=20Nachrichten
beginnen."
Wenn ich aber imap_utf8 auf die Betreffzeile oder ein anderes Element des Headers mache, funktioniert die Konvertierung zu UTF-8 wunderbar:
$imap = imap_open('{'.$postfach.'/pop3}INBOX', $username, $password);
$mails = imap_fetch_overview($imap,'1');
echo imap_utf8($mails[16]->from);
da kommt dann fehlerfrei ein Vor- und Nachname mit Umlauten heraus:
Thömpa Trümpa (Bsp.)
Hat jemand von euch Erfahrung mit der Funktionsliste imap und wie ich den Body richtig darstellen kann? Muss ich wirklich mit regulären Ausdrücken den ganzen Body checken?
Viele Grüße!
Moin!
So schaut dann der Text aus:
"Falls=20d=
u=20meiner=20Einladung=20folgen
m=F6chtest,=20antworte=20einfach=20direktauf=20diese=20E-Mail.=20Wir=20k=F6nnen=20dann
mit=20dem=20Austausch=20von=
=20Nachrichten
beginnen."
Sieht extrem nach quoted-printable-Encoding aus. Dafür hat PHP eine Funktion.
- Sven Rautenberg
Sieht extrem nach quoted-printable-Encoding aus. Dafür hat PHP eine Funktion.
Vielen Dank Sven, genau dat wars :)