我有这个PHP代码发送邮件
if(Input::has('email')){
$to = Input::get('email');
$link = 'blabla';
$subject = 'blabla';
$message = "Ü Ä Ö jfklsfjal";
$headers = 'From: dontreply@asdf.com' . "'r'n" .
'Reply-To: dontreply@asdf.com' . "'r'n" .
'Content-Type: text/plain;charset=utf-8'r'n' . "'r'n" .
'X-Mailer: PHP/' . phpversion();
mail($to, $subject, $message, $headers);
}
问题是,它仍然不发送Ö Ä等不正确(但我只是添加了内容类型)!
有人知道为什么它不起作用吗?
我认为你的标题是不正确的,因为你有'r'n
部分的内容类型(在单引号中包装),即:
$headers = 'From: dontreply@asdf.com' . "'r'n" .
'Reply-To: dontreply@asdf.com' . "'r'n" .
'Content-Type: text/plain;charset=utf-8'r'n' . "'r'n" .
-------------------------------------------------------^^^^
'X-Mailer: PHP/' . phpversion();
试着把上面的改成:
$headers = 'From: dontreply@asdf.com' . "'r'n" .
'Reply-To: dontreply@asdf.com' . "'r'n" .
'Content-Type: text/plain;charset=utf-8' . "'r'n" .
'X-Mailer: PHP/' . phpversion();
如果不成功,试试这个:
$headers = 'From: dontreply@asdf.com' . "'r'n" .
'Reply-To: dontreply@asdf.com' . "'r'n" .
'Content-Type: text/html;charset=utf-8' . "'r'n" .
'X-Mailer: PHP/' . phpversion();