Pru*_*rus 4 php email iso utf-8 character-encoding
我有以下php脚本根据返回的参数发送电子邮件:
<?
header('Content-Type: application/json; charset=utf-8');
$headers = "From: Source\r\n";
$headers .= "Content-type: text/html;charset=utf-8\r\n";
$to = $data["t_email"];
$subject = "Hello";
$message = (gather_post("locale") == "fr_CA")?"message français ééààèè": "english message";
mail($to, $subject, $message, $headers);
?>
Run Code Online (Sandbox Code Playgroud)
我已经采取了不相关的部分.邮件将被正常发送,但重音符号将无法正确显示.一切都被设置为utf-8 charset,我不明白为什么这不起作用.
您可能必须使用utf8_encode()对html进行编码.例如:
$message = utf8_encode("message français ééààèè");
Run Code Online (Sandbox Code Playgroud)
我必须这样做才能动态导入法语Word文档,而且效果很好.如果这可以解决您的问题,请告诉我.
<?php
$to = 'example@gmail.com';
$subject = 'subject';
$message = utf8_encode('message français ééààèè');
$headers = 'From: webmaster@example.com' . "\r\n" .
'Reply-To: webmaster@example.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
if(mail($to, $subject, $message, $headers)){
echo 'success!';
}
?>
Run Code Online (Sandbox Code Playgroud)