मैं मैं निर्दिष्ट वर्णसेट (आईएसओ -885 9 -2) का उपयोग कर रहा हूं क्योंकि प्रत्येक मेल सिस्टम नहीं (उदाहरण के लिए: http://10minutemail.com) यूटीएफ -8 मेल पढ़ सकते हैं। यदि आपको इसकी आवश्यकता है:
function utf8_to_latin2($str)
{
return iconv ('utf-8', 'ISO-8859-2' , $str);
}
function my_mail($to,$s,$text,$form, $reply)
{
mail($to,utf8_to_latin2($s),utf8_to_latin2($text),
"From: $form\r\n".
"Reply-To: $reply\r\n".
"X-Mailer: PHP/" . phpversion());
}
मैंने एक और मेलर फ़ंक्शन बनाया है, क्योंकि सेब डिवाइस पिछले संस्करण को अच्छी तरह से पढ़ नहीं पाया।
function utf8mail($to,$s,$body,$from_name="x",$from_a = "[email protected]", $reply="[email protected]")
{
$s= "=?utf-8?b?".base64_encode($s)."?=";
$headers = "MIME-Version: 1.0\r\n";
$headers.= "From: =?utf-8?b?".base64_encode($from_name)."?= <".$from_a.">\r\n";
$headers.= "Content-Type: text/plain;charset=utf-8\r\n";
$headers.= "Reply-To: $reply\r\n";
$headers.= "X-Mailer: PHP/" . phpversion();
mail($to, $s, $body, $headers);
}
स्रोत
2011-09-01 07:51:31
आप क्या उपयोग करते हैं? मूल 'मेल ')' या' ज़ेंड_Mail' या 'PHPMailer'? फैक्टरी विधि के कुछ कोड की आवश्यकता है! –
आपको अतिरिक्त रूप से गंतव्य ईमेल क्लाइंट का ख्याल रखना होगा। भले ही आपको यह पता चलता है कि यह आपके ईमेल क्लाइंट में सही ढंग से ईमेल देखने में कामयाब रहा है, इसका मतलब यह नहीं है कि आपका ग्राहक मेल को सही तरीके से देखेगा। अंत में मैं हमेशा यूटीएफ -8 वर्णसेट हेडर के साथ एचटीएमएल-ईमेल बनाता हूं। इस तरह अधिकांश ईमेल-क्लाइंट सामग्री को सही तरीके से प्रदर्शित करते हैं। – Marco
@FlyBy: हाँ, वही है जो मैं करना चाहता हूं, सामग्री को utf-8 charset के साथ प्रदर्शित करें, लेकिन मैं अभी भी ईमेल को सही तरीके से नहीं देख सकता। – deepWebMie