2

我用它来发送电子邮件:

$_POST['message'] = filter_var($_POST['message'], FILTER_SANITIZE_STRING);
// …    
mail($mail_to, $subject, $message,  'MIME-Version: 1.0' ."\r\n" .'Content-type: text/plain; charset=UTF-8' . "\r\n".'From: '.$_POST['email'] . "\r\n" .'Reply-To: '.$_POST['email']. "\r\n" );

它有效,但报价看起来像这样:".
报价中有一个选项,filter_var()但它安全吗?

4

1 回答 1

0

如果您将邮件作为 HTML 而不是纯文本发送,则经过清理的字符将正确显示。可以通过更改在您的代码中做到这一点:

'Content-type: text/plain; charset=UTF-8'

'Content-type: text/html; charset=UTF-8'
于 2014-04-02T14:40:53.810 回答