Hallo Gummibär, ;-)
Ich hab mir gedacht bevor ich da sonstwas mit der Codierung untersuche, schreibe ich die Inhalte direkt in die Variable:
$fileContent = <<< content
BEGIN:VCARD
VERSION:4.0
NOTE:tatsächlich
END:VCARD
content;
$strAttachment .= chunk_split(base64_encode($fileContent)).PHP_EOL;
hm, da kann ja nun wirklich nichts schiefgehen.
> Der übertragene Wert (also $fileContent) hat den base64 Wert von:
> `QkVHSU46VkNBUkQNClZFUlNJT046NC4wDQpOT1RFOnRhdHPDpGNobGljaA0KRU5EOlZDQVJE`{:.language-html}
>
> Wenn ich den Wert wieder zurück übersetze, erhalte ich wieder den Urpsrung:
> `base64_decode( "QkVHSU46VkNBUkQNClZFUlNJT046NC4wDQpOT1RFOnRhdHPDpGNobGljaA0KRU5EOlZDQVJE" );`{:.language-php}
>
> Ergibt:
> ~~~html
BEGIN:VCARD
> VERSION:4.0
> NOTE:tatsächlich
> END:VCARD
>
Okay. Das ist soweit alles noch nachvollziehbar. Und trotzdem kommt am Ende =C3=A4 raus? That's Voodoo.
Wie wärs, wenn ich das ganze nicht in base64 sondern gleich in Quoted-Printable sende?
Auch möglich. Du könntest sogar versuchen, Transfer-Encoding: 8bit zu verwenden, was letzten Endes eine 1:1-Übertragung ohne jegliche Codierung wäre. Aber ich find's doch mysteriös, wo die zusätzliche Codierung bei dir herkommt. Magst du mal eine der Problem-Testmails zur Forensik an meine Mailadresse senden? Und zusätzlich nochmal den exakten verwendeten Code entweder hier posten oder ebenfalls per Mail?
Es wäre echt peinlich, wenn wir am Ende wirklich keine andere Erklärung haben, als dass es bei dir spukt.
So long,
Martin
Die letzten Worte des stotternden Beifahrers:
Frei... frei... frei... freilich kommt da was!!
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(