Hallo Felix,
ich suche nach einer PHP-Klasse, die mir eine E-Mail dahingehend parst, dass sie folgende Daten zuverlässig und in egal welcher Kodierung ermittelt:
* Absender
* Empfänger
* eigentliche Mail
ich kenne oder habe zwar nichts Fertiges, denke aber, dass das als Schnellschuss ein Feierabendprojekt wäre, mit ausführlichen Tests vielleicht ein Wochenendprojekt.
Ganz grob sehe ich folgende Schritte:
* explode an "\r\n\r\n", damit erhalte ich den Header-Block und den Content-Block
* explode des Header-Blocks an "\r\n", dann erhalte ich aller Headerzeilen als Einzel-Elemente
Achtung: Die mit Whitespace beginnenden müssen wieder dem vorhergehenden Element zugeordnet
werden.
* Empfänger und Absender stecken in den Header-Zeilen "To:" und "From:", dabei aufpassen, weil
die Daten base64- oder Quoted-Printable codiert sein können
Mit den Daten möchte ich erreichen, dass ich die Mail im Grunde unverändert (bis auf neuen Empfänger und Absender) weiterversenden kann, inklusive möglicher Attachments. Die bereits vorhandenen Header sind mir dabei sogar egal, Hauptsache der Inhalt der Mail bleibt erhalten.
Bis hierher kein Problem. Die bisherigen Header müssen sogar zum Großteil wieder entfallen (etwa sämtliche Received- oder X-Felder).
Idealerweise möchte ich doch den Mailtext verändern können. Es geht um einen Bestätigungslink, der am Anfang der eigentlichen Nachricht einzufügen wäre - sowohl in text/plain als auch text/html. Das wäre allerdings sekundär.
Und es würde einen erheblichen Mehraufwand bedeuten, der beim reinen Weiterleiten nicht anfallen würde. Man müsste nämlich die ganze Struktur des Mail-Body analysieren, was andernfalls nicht nötig wäre.
So long,
Martin
Dieser Satz wurde in mühsamer Kleinstarbeit aus einzelnen Wörtern zusammengesetzt.
(Hopsel)
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(