我正在尝试使用PHP发送电子邮件。我采用了我以前使用过的一段代码,但现在不再起作用。我发现问题出在主题上。
当我的主题是“测试”时,将发送邮件,但是当我的主题是其他带有大写字母的东西(例如“测试”)时,它将不起作用。我很确定这是一个快速解决方案,但是我找不到答案。
这是我的代码。
在index.php中
$subject= 'test';
$message = implode("\n" , $_SESSION['data']);
mail_html($subject, $message, $email);
在functions.php中
function mail_html ( string $subject, string $message, string $receiver) {
$headers = 'From: Template <me@me.com>' . "\r\n";
$headers .= 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=utf-8';
mail($receiver, $subject, $message, $headers);
}
谢谢大家对我的帮助。我觉得自己被这样的事情挡住了。
答案 0 :(得分:3)
发送电子邮件是一个非常困难的过程。因此,如果您没有启用所有常见的SPAM预防机制,就无法从计算机或服务器发送电子邮件这么容易。
因此,当您没有反向DNS条目并发送带有“测试”的电子邮件时,您不应该怀疑这些电子邮件是否无法发送到另一个站点。因此,请查看服务器的SPF-System,Reverse-DNS和通用名称(不适用于某些提供程序)。然后,您可以发送一些电子邮件。
要查找一些问题,请检查您的邮件日志/var/log/mail.log
。
当您尝试防止该问题时,请使用提供商提供的SMTP帐户并通过SMTP发送该电子邮件。