首页  >  文章  >  后端开发  >  如何使用 PHPMailer 在 HTML 电子邮件中嵌入图像

如何使用 PHPMailer 在 HTML 电子邮件中嵌入图像

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-10-22 21:36:29604浏览

How to Embed Images in HTML Emails Using PHPMailer

使用嵌入图像实现 HTML 电子邮件

将 HTML 电子邮件与嵌入图像集成需要全面了解电子邮件传送技术。本文深入探讨了在电子邮件中嵌入图像的复杂性,特别关注如何使用强大的 PHPMailer 库。

了解内联图像

电子邮件中的内联或嵌入图像与传统的附件不同。它们直接合并到电子邮件正文中,作为消息内容本身的一部分出现。这种技术消除了对外部下载或附件的需要。

PHPMailer 和嵌入式图像

PHPMailer 是一个受人尊敬的库,旨在简化发送电子邮件的过程。它提供了添加内联附件的专用功能,使您可以将图像无缝嵌入到 HTML 电子邮件中。要利用此功能,只需调用 AddEmbeddedImage() 函数,并提供以下参数:

文件名:服务器上图像文件的路径
cid: 图像的唯一标识符
名称: 图像的显示名称

示例实现

这里是一个示例 PHP 脚本,说明了如何使用PHPMailer 发送嵌入图像的 HTML 电子邮件:

<code class="php"><?php
require_once('../class.phpmailer.php');
$mail = new PHPMailer(true); // Enable exceptions for error handling

$mail->IsSMTP(); // Configure SMTP settings
$mail->Host = "mail.yourdomain.com"; // SMTP server
$mail->Port = 25; // SMTP port
$mail->SetFrom('[email protected]', 'First Last');
$mail->AddAddress('[email protected]', 'John Doe');
$mail->Subject = 'PHPMailer Test';
$mail->AddEmbeddedImage("rocks.png", "my-attach", "rocks.png"); // Embed the image
$mail->Body = 'Your <b>HTML</b> with an embedded Image: <img src="cid:my-attach"> Here is an image!';
$mail->AddAttachment('something.zip'); // Regular attachment (not inline)
$mail->Send();
echo "Message Sent OK<p></p>\n";
?></code>

其他注意事项

如有必要,您可以将 Send() 方法替换为 CreateBody()检索电子邮件的 MIME 内容。这允许您使用自己喜欢的方法发送电子邮件。 PHPMailer 仍然是构建电子邮件、确保图像正确嵌入的宝贵工具。

以上是如何使用 PHPMailer 在 HTML 电子邮件中嵌入图像的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn