悠悠楠杉
网站页面
正文:
在现代Web开发中,邮件发送是用户注册、密码找回等功能的必备模块。PHPMailer作为PHP领域最成熟的邮件发送库,相比原生mail()函数具有更好的稳定性和功能扩展性。下面我们将从零开始构建完整的邮件发送解决方案。
首先需要通过Composer安装PHPMailer:
composer require phpmailer/phpmailer
或者手动下载PHPMailer类库,将src目录重命名为PHPMailer后放入项目目录。建议使用Composer方式管理依赖,可以自动处理版本兼容问题。
以下是支持SSL加密的SMTP发送示例:
require 'vendor/autoload.php';
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
$mail = new PHPMailer(true);
try {
// 服务器配置
$mail->isSMTP();
$mail->Host = 'smtp.example.com';
$mail->SMTPAuth = true;
$mail->Username = 'user@example.com';
$mail->Password = 'yourpassword';
$mail->SMTPSecure = 'ssl';
$mail->Port = 465;
// 收件人配置
$mail->setFrom('from@example.com', '发件人名称');
$mail->addAddress('to@example.com', '收件人名称');
// 邮件内容
$mail->isHTML(true);
$mail->Subject = '测试邮件主题';
$mail->Body = 'HTML内容段落文本
';
$mail->AltBody = '纯文本内容';
$mail->send();
echo '邮件发送成功';
} catch (Exception $e) {
echo "发送失败: {$mail->ErrorInfo}";
}
附件添加:
php
$mail->addAttachment('/path/to/file.pdf');
$mail->addStringAttachment(file_get_contents('image.jpg'), 'custom_name.jpg');
HTML邮件优化:
- 使用内联样式代替