Php 如何在邮件中添加嵌入图像,但不附加图像?

Php 如何在邮件中添加嵌入图像,但不附加图像?,php,phpmailer,Php,Phpmailer,我在邮件正文中添加图像时遇到问题。我在php主体中添加图像的所有方法都会附加图像,我不希望发生这种情况。我只想把它嵌入邮件正文 这是我的邮件内容: 我的第一种方法:(使用phpMailer函数) $mail->AddEmbeddedImage(“img/LafProject.png”、“LafProject”、“LafProject.png”); $content=''; 这就是我尝试使用上述代码时发生的情况: (附件-我不知道如何删除) 我的第二种方法:(在图像中使用base64_编码)

我在邮件正文中添加图像时遇到问题。我在php主体中添加图像的所有方法都会附加图像,我不希望发生这种情况。我只想把它嵌入邮件正文

这是我的邮件内容:

我的第一种方法:(使用phpMailer函数)

$mail->AddEmbeddedImage(“img/LafProject.png”、“LafProject”、“LafProject.png”);
$content='';
这就是我尝试使用上述代码时发生的情况:

(附件-我不知道如何删除)

我的第二种方法:(在图像中使用base64_编码)

$content='';
这就是我尝试使用上述代码时发生的情况:


(与第一种方法相同,但附加了另一个文件名)

我认为您遗漏了一件基本的事情:嵌入的图像也是附件。它们是否也显示为附件取决于电子邮件客户端的实现。避免这种情况的唯一方法是使用根本不是附件的图像,也就是说,它们通过外部URL链接。不幸的是,这通常意味着图像根本不会显示,因为大多数电子邮件客户端应用程序默认不显示图像


处理这一问题的最佳方法是确保您的布局在有图像和无图像的情况下都足够好,因此请特别利用alt属性。

请不要通过破坏您的帖子为其他人做更多的工作。通过在Stack Exchange网络上发布,您已授予Stack Exchange在下不可撤销的权利,以分发该内容(即,无论您未来的选择如何)。根据堆栈交换策略,帖子的非破坏版本是分发的版本。因此,任何故意破坏行为都将恢复原状。如果您想了解有关删除帖子的更多信息,请参阅:
$mail->AddEmbeddedImage("img/LafProject.png", "LafProject", "LafProject.png");
$content = '<img src="cid:LafProject" />';
$content = '<img src="data:image/png;base64,' . base64_encode(get_file_contents("img/LafProject.png")) . '" />';