Az e-mailek küldése PHP-vel a leghatékonyabb hatékony osztályokkal, például a PHPMailerrel valósítható meg . A kényelmes burkoló funkciók lehetővé teszik az UTF-8 tartalom használatát, képek beágyazását és titkosított mellékletek elküldését néhány kódsorral. Ha el akarja menteni az általános költségeket, és az ajánlással ellentétben a mail () PHP funkciót kívánja használni, akkor legkésőbb az umlauts és az UTF-8 használatakor problémákba ütközik.
Miután meghívta a függvényt a
mail(
"vieldav@gmx.de", // Empfänger
"ä ö ü ß", // Betreff
"ä ö ü ß", // Inhalt
"From: ä ö ü ß <david@vielhuber.de>" // Header (Absender)
);
egy UTF-8 kódolású fájlban már problémákhoz vezet a beérkező levelek mappában: az Outlook 2013 még mindig kegyes és mindent helyesen jelenít meg:
De a GMX nem bocsátja meg a hiányzó fejléceket, és rossz témát, feladót és tartalmat mutat:
Ha a megfelelő fejléceket küldi (például base64_encode kóddal), akkor megkapja
mail(
"vieldav@gmx.de", // Empfänger
"=?UTF-8?B?".base64_encode("ä ö ü ß")."?=", // Betreff
"ä ö ü ß", // Inhalt
"Content-type: text/plain; charset=utf-8\r\n"
."From: =?UTF-8?B?".base64_encode("ä ö ü ß")."?=<david@vielhuber.de>" // Header (Absender)
);
és végül a GMX helyes ábrázolást mutat: