mail () នៅក្នុង PHP ជាមួយ UTF-8 និង umlauts

ការផ្ញើអ៊ីមែល ជាមួយ PHP គឺល្អបំផុតជាមួយថ្នាក់ដែលមានអនុភាពដូចជា PHPMailer ។ មុខងាររុំងាយស្រួលធ្វើឱ្យវាអាចប្រើមាតិកាក្នុងយូធីអេហ្វអេ ៨ ជាមួយនឹងកូដពីរបីបន្ទាត់បង្កប់រូបភាពនិងផ្ញើឯកសារភ្ជាប់ដែលបានអ៊ិនគ្រីប។ ប្រសិនបើអ្នកចង់រក្សាទុកផ្នែកខាងលើហើយផ្ទុយពីអនុសាសន៍សូមប្រើ សំបុត្រ មុខងាររបស់ PHP () អ្នកនឹងជួបប្រទះបញ្ហានៅពេលចុងក្រោយនៅពេលប្រើអយស្ទេតនិងយូធីហ្វា -8 ។


បន្ទាប់ពីហៅមុខងារជាមួយ

mail(
   "vieldav@gmx.de",                          // Empfänger
   "ä ö ü ß",                                 // Betreff
   "ä ö ü ß",                                 // Inhalt
   "From: ä ö ü ß <david@vielhuber.de>"       // Header (Absender)
);

នៅក្នុង UTF-8 ដែលបានអ៊ិនកូដឯកសាររួចហើយនាំឱ្យមានបញ្ហានៅក្នុងប្រអប់ទទួល៖ ទស្សនវិស័យ ២០១៣ នៅតែគួរអោយគោរពហើយបង្ហាញអ្វីៗគ្រប់យ៉ាងអោយបានត្រឹមត្រូវ៖

ម៉ែល ១

ប៉ុន្តែរួចហើយ GMX មិនអភ័យទោសចំពោះបឋមកថាដែលបាត់ហើយបង្ហាញពីប្រធានបទអ្នកផ្ញើនិងខ្លឹមសារមិនជោគជ័យ៖

ម៉ែល ២

ប្រសិនបើអ្នកផ្ញើបឋមកថាត្រឹមត្រូវ (ឧទាហរណ៍ជាមួយ base64_encode) អ្នកនឹងទទួលបាន

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)
);

ហើយចុងក្រោយ GMX ក៏បានបង្ហាញនូវការតំណាងត្រឹមត្រូវ៖

ម៉ែល ៣

ថយក្រោយ