PHPMailer是PHP项目中发送邮件的高效选择,支持SMTP认证、HTML邮件和附件。推荐使用Composer安装:执行composer init初始化后,运行composer require phpmailer/phpmailer自动下载并引入autoload.php;也可手动下载GitHub源码并引入。基本用法为通过SMTP发送邮件,如使用Gmail需配置Host为smtp.gmail.com、启用SMTPAuth、设置用户名和应用专用密码,使用ENCRYPTION_STARTTLS加密方式及587端口,调用setFrom、addAddress设置发件人与收件人,isHTML(true)开启HTML内容,设置Subject、Body等参数后调用send()发送。注意事项包括使用应用专用密码保障安全、确保OpenSSL扩展开启、保持UTF-8编码避免乱码、优化主题与频率防止被识别为垃圾邮件。其他可选方案有已停止维护的Swift Mailer或第三方服务如Mailgun、SendGrid的SDK,但PHPMailer仍是大多数项目的首选方案。
PHPMailer 是一个功能强大且广泛使用的 PHP 邮件发送库,支持 SMTP 认证、HTML 邮件、附件等多种特性。如果你需要在 PHP 项目中实现邮件发送功能,安装和使用 PHPMailer 是一个高效的选择。
Composer 是 PHP 的依赖管理工具,使用它可以轻松安装和管理 PHPMailer。
打开终端或命令行工具,在项目根目录下执行以下命令:
composer init
composer require phpmailer/phpmailer
执行完成后,Composer 会自动下载 PHPMailer 及其依赖,并生成 vendor/ 目录和 autoload.php 文件。
无法使用 Composer 的环境)如果服务器不支持 Composer,可以手动下载:
以下是一个使用 Gmail SMTP 发送邮件的示例代码:
send_email.php
isSMTP();
$mail->Host = 'smtp.gmail.com';
$mail->SMTPAuth = true;
$mail->Username = 'your_email@gmail.com';
$mail->Password = 'your_app_password'; // 推荐使用应用专用密码
$mail->SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS;
$mail->Port = 587;
// 收件人
$mail->setFrom('your_email@gmail.com', 'Your Name');
$mail->addAddress('recipient@example.com', 'Recipient Name');
// 邮件内容
$mail->isHTML(true);
$mail->Subject = '测试邮件标题';
$mail->Body = '这是一封测试邮件
支持 HTML 格式内容。
';
$mail->AltBody = '纯文本版本:这是一封测试邮件';
$mail->send();
echo '邮件发送成功!';
} catch (Exception $e) {
echo "邮件发送失败:{$mail->ErrorInfo}";
}
对于大多数项目,PHPMailer 是最简单实用的选择。
基本上就这些,安装后测试一次即可正常使用。