Ich habe diesen Code. Es ist aus dem Zend Reading Mail Beispiel.Warum dekodiert diese Mail-Nachricht nicht korrekt?
$message = $mail->getMessage(1);
// output first text/plain part
$foundPart = null;
foreach (new RecursiveIteratorIterator($mail->getMessage(1)) as $part) {
try {
if (strtok($part->contentType, ';') == 'text/plain') {
$foundPart = $part;
break;
}
} catch (Zend_Mail_Exception $e) {
// ignore
}
}
if (!$foundPart) {
echo 'no plain text part found';
} else {
echo $foundPart->getContent();
}
Was ich bekommen kann, ist die Nachricht, die gut funktioniert. Aber versuchen, die Nachricht in etwas lesbares zu dekodieren, funktioniert nicht. Ich habe Zend_Mime, imap_mime und iconv ohne Erfolg ausprobiert.
Dies ist ein Beispiel dafür, was ich mit $foundPart->getContent();
Halle = F3 Heimer erhalten = FAr
It "Halló HEIMUR"
einige nurWas will ich würde ist, sollte sagen Bibliothek wo ich in der Praxis "Knopf drücken, Speck bekommen" konnte. Was ich meine ist, ich möchte nur die Bibliothek auf eine POP3-E-Mail-Box verweisen und die E-Mail in lesbarer Form (ohne jegliche Verschlüsselungsprobleme) und die Anhänge erhalten.
imap_mime_header_decode()
Gibt mir ein Array mit den gleichen Daten.
iconv_ mime_ decode()
Hat die gleiche
Hat jemand eine Idee, warum dies geschieht oder eine Bibliothek, wo ich kann dies nur abstrahieren (PHP/Python oder Perl)
imap_qprint() war der Trick. Danke :) –
Es ist nicht base64 codiert. Es ist im Zitieren-druckbar: http://en.wikipedia.org/wiki/Quoted-printable –
Pawel hat Recht, die Antwort ist nicht so einfach. Siehe meine Antwort für eine vollständigere Lösung. – Andrew