PHPMailer 是一个用于发送电子邮件的 PHP 类库。它支持发送纯文本邮件、HTML 邮件以及带附件的邮件,包括图像。通过 PHPMailer,你可以轻松地将图像作为附件或内嵌到邮件正文中。
以下是一个使用 PHPMailer 循环添加图像的示例代码:
<?php
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 = 'your_email@example.com';
$mail->Password = 'your_password';
$mail->SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS;
$mail->Port = 587;
// 发件人
$mail->setFrom('from@example.com', 'Mailer');
// 收件人
$mail->addAddress('recipient@example.com', 'Joe User');
// 邮件内容
$mail->isHTML(true);
$mail->Subject = 'PHPMailer 循环添加图像示例';
$mail->Body = '<h1>循环添加图像示例</h1>';
// 图像路径数组
$imagePaths = [
'path/to/image1.jpg',
'path/to/image2.png',
'path/to/image3.gif'
];
// 循环添加图像
foreach ($imagePaths as $imagePath) {
$mail->addEmbeddedImage($imagePath, md5($imagePath), basename($imagePath));
}
// 添加内嵌图像到邮件正文中
$mail->Body .= '<img src="cid:' . md5($imagePaths[0]) . '" alt="Image 1"><br>';
$mail->Body .= '<img src="cid:' . md5($imagePaths[1]) . '" alt="Image 2"><br>';
$mail->Body .= '<img src="cid:' . md5($imagePaths[2]) . '" alt="Image 3"><br>';
// 发送邮件
$mail->send();
echo '邮件发送成功';
} catch (Exception $e) {
echo "邮件发送失败: {$mail->ErrorInfo}";
}
?>
cid
与 addEmbeddedImage
方法中的 cid
一致。$mail->ErrorInfo
获取详细的错误信息,并根据错误信息进行排查。通过以上步骤,你可以成功使用 PHPMailer 循环添加图像并发送邮件。
领取专属 10元无门槛券
手把手带您无忧上云