探索 PHP 邮件发送:从基础 SMTP 到附件发送实战
文章最后更新时间:2025年12月11日
邮件发送是 Web 应用的常见功能 —— 如用户注册激活、密码找回、订单通知等。PHP 可通过mail()函数或第三方类库(如 PHPMailer)实现邮件发送,其中 PHPMailer 更稳定、支持 SMTP 和附件,是主流选择。

一、基础实现:用 PHPMailer 发送纯文本邮件
<?php
// 引入PHPMailer类(需先下载引入)
require 'PHPMailer/src/PHPMailer.php';
require 'PHPMailer/src/SMTP.php';
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\SMTP;
$mail = new PHPMailer(true);
try {
// 配置SMTP服务器
$mail->SMTPDebug = SMTP::DEBUG_OFF; // 关闭调试
$mail->isSMTP();
$mail->Host = 'smtp.163.com'; // 网易SMTP服务器
$mail->SMTPAuth = true;
$mail->Username = 'your_email@163.com'; // 发件人邮箱
$mail->Password = 'your_auth_code'; // 邮箱授权码
$mail->SMTPSecure = PHPMailer::ENCRYPTION_SMTPS;
$mail->Port = 465;
// 设置收件人、发件人
$mail->setFrom('your_email@163.com', '发件人名称');
$mail->addAddress('recipient@example.com', '收件人名称');
// 设置邮件内容
$mail->isHTML(false); // 纯文本邮件
$mail->Subject = 'PHP邮件发送测试';
$mail->Body = '这是一封通过PHPMailer发送的测试邮件!';
$mail->send();
echo '邮件发送成功!';
} catch (Exception $e) {
echo "邮件发送失败:{$mail->ErrorInfo}";
}
?>二、进阶:发送带附件的邮件
<?php
// 接上面的代码,在设置邮件内容后添加:
// 添加附件(本地文件)
$mail->addAttachment('./file.pdf', '测试附件.pdf'); // 第二个参数为附件显示名称
// 发送HTML格式邮件
$mail->isHTML(true);
$mail->Body = '<h1>HTML邮件测试</h1><p>这是<b>HTML格式</b>的邮件内容</p>';
?>总结
文章版权声明:除非注明,否则均为Dark零点博客原创文章,转载或复制请以超链接形式并注明出处。

