【发布时间】:2018-11-03 22:28:23
【问题描述】:
以前我在 PHP 中使用 mail() 函数来处理我的网站。现在我们得到了站点的域(nginx 服务器),现在 mail() 只是不想表现,总是返回 false。我为 mail() 设置了 PHP ini,正确的域为
所以...我求助于 PHPMailer,但它仍然无法正常工作...。
我收到此错误.... Could not instantiate mail function.
所以我的问题是出了什么问题?我没有 SMTP 主机...我想使用本地服务器作为邮件服务器,因为它以前工作过,我相信我有正确的设置。
与作曲家一起安装。
这是我的代码:
require_once($_SERVER['DOCUMENT_ROOT']."/vendor/phpmailer/phpmailer/src/PHPMailer.php");
require_once($_SERVER['DOCUMENT_ROOT']."/vendor/phpmailer/phpmailer/src/SMTP.php");
require_once($_SERVER['DOCUMENT_ROOT']."/vendor/phpmailer/phpmailer/src/Exception.php");
$emailer = new PHPMailer\PHPMailer\PHPMailer();
$emailer->IsMail();
$emailer->SetFrom("noreply@my.domain");
$emailer->FromName = "My Domain";
$emailer->AddAddress($admin_data['email']);
$emailer->isHTML(false);
$emailer->Subject = "test";
$emailer->Body = " test "
if(!$emailer->send()){
give_error("Send Email Error: " . $emailer->ErrorInfo);
return false;
}
【问题讨论】:
-
您的 SMTP 主机可能是
localhost?我使用自己的邮件程序...但听起来 PHPMailer 已配置为使用外部服务等。检查..../src/SMTP.php文件。