Ordnungsgemäße Dekodierung des eingehenden E-Mail Betreffs (utf 8)

7

Ich versuche, meine eingehenden Mails an ein PHP-Skript zu übergeben, damit ich sie in einer Datenbank und anderen Dingen speichern kann. Ich verwende die Klasse MIME-E-Mail-Nachrichtenparser (Registrierung erforderlich ) obwohl ich das nicht für wichtig halte.

Ich habe ein Problem mit E-Mail-Themen. Es funktioniert gut, wenn der Titel in Englisch ist, aber wenn das Thema nicht-lateinische Zeichen verwendet, bekomme ich etwas wie

%Vor%

für einen Titel wie یک دو سه

Ich dekodiere das Thema so:

%Vor%

Es funktioniert gut mit kurzen Fächern mit etwa 10-15 Zeichen, aber mit einem längeren Titel bekomme ich die Hälfte des Originaltitels mit etwas wie am Ende.

Wenn der Titel noch länger ist, wie 30 Zeichen, bekomme ich nichts. Mache ich das richtig?

    
max 24.12.2011, 20:42
quelle

5 Antworten

13

Trotz der Tatsache, dass es fast ein Jahr alt ist - ich habe das gefunden und stehe vor einem ähnlichen Problem.

Ich bin mir nicht sicher, warum du seltsame Zeichen erhältst, aber vielleicht versuchst du, sie dort anzuzeigen, wo dein Zeichensatz nicht unterstützt wird.

Hier ist ein Code, den ich geschrieben habe, der alles außer der Zeichensatzkonvertierung behandeln sollte, was ein großes Problem ist, das viele Bibliotheken viel besser handhaben. (PHP MB-Bibliothek , zum Beispiel)

%Vor%

Wenn Sie ein Skript ausführen und mit UTF-8 in einem Browser angezeigt werden, lautet das Ergebnis:

آزمایش

Sie würden es so ausführen:

%Vor%     
razzed 04.12.2012, 00:48
quelle
6

Sie können die Funktion mb_decode_mimeheader() verwenden, um Ihre Zeichenfolge zu dekodieren.

    
TiMESPLiNTER 29.04.2014 11:46
quelle
2

Verwenden Sie die PHP-Funktion:

%Vor%     
Michał 16.12.2015 13:32
quelle
2

Verwenden Sie die native PHP-Funktion

%Vor%

Diese Funktion kann sowohl mit utf8 als auch mit iso-8859-1 string umgehen. Ich habe es getestet.

    
Prashant Baldha 25.02.2016 10:14
quelle
-1

Würde die imap-mime-header-decode Funktion hier helfen?

Ich habe mich heute in einer ähnlichen Situation wiedergefunden.

Ссылка

    
Philonious 21.02.2014 01:52
quelle

Tags und Links