电子邮件仍然是网络通信中不可或缺的一部分,而图文结合的HTML邮件越来越受欢迎。本文将为您讲解如何借助PHPMailer库,在PHP中发送带有嵌入图片的HTML邮件。
首先,确保项目中已经安装了PHPMailer。你可以使用Composer进行安装,只需在项目根目录的 composer.json
中添加以下依赖项:
"require": {
"phpmailer/phpmailer": "~6.0"
}
安装完成后,PHPMailer将被自动加载,可以直接引用使用。
以下是一个完整的示例代码,展示如何配置SMTP服务器、设置邮件内容以及嵌入图片:
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;
require 'vendor/autoload.php';
$mail = new PHPMailer(true);
try {
// 服务器设置与身份验证
$mail->SMTPDebug = 0;
$mail->isSMTP();
$mail->Host = 'smtp.example.com';
$mail->SMTPAuth = true;
$mail->Username = 'your-email@example.com';
$mail->Password = 'your-email-password';
$mail->SMTPSecure = 'tls';
$mail->Port = 587;
// 发件人与收件人
$mail->setFrom('your-email@example.com', 'Your Name');
$mail->addAddress('recipient@example.com', 'Recipient Name');
// 邮件内容
$mail->isHTML(true);
$mail->Subject = '这是一封带有图片的HTML邮件';
$mail->Body = '
<h1>Hello World!</h1>
<p>这是一封带有图片的HTML邮件。<br>
图片示例:<br>
<img src="cid:image1" alt="Image" style="max-width:90%">
</p>';
// 嵌入本地图片
$mail->AddEmbeddedImage('/path/to/image.jpg', 'image1');
// 发送邮件
$mail->send();
echo '邮件发送成功!';
} catch (Exception $e) {
echo '邮件发送失败:' . $mail->ErrorInfo;
}
上面的代码演示了发送HTML格式邮件的流程:
isHTML(true)
方法开启HTML格式支持,使邮件正文支持HTML标签。AddEmbeddedImage
方法嵌入本地图片,通过设置 cid
值在HTML中进行引用。<img src="cid:image1">
标签来展示嵌入的图片。发送图文邮件时,请注意以下几点:
通过PHP与PHPMailer结合使用,开发者可以快速实现发送包含图文的HTML邮件功能。该方式不仅能提升邮件的视觉表现,也有助于提高邮件的阅读率和专业性。只需按照步骤配置好SMTP、撰写HTML内容并正确嵌入图片,即可实现图文并茂的邮件发送。
相关标签:
HTML