php - 如何在邮件中添加嵌入图像但不附加图像?
问题描述
我在邮件正文中添加图像时遇到问题。我用来在我的 php 正文中添加图像的所有方式都附加了图像,我不希望它发生。我只想将它嵌入到邮件正文中。
这是我的邮件内容:
我的第一种方式:(使用 phpMailer 函数)
$mail->AddEmbeddedImage("img/LafProject.png", "LafProject", "LafProject.png");
$content = '<img src="cid:LafProject" />';
这就是我尝试使用上面的代码时发生的情况:
(附件 - 我不知道如何删除它)
我的第二种方式:(在图像中使用base64_encode)
$content = '<img src="data:image/png;base64,' . base64_encode(get_file_contents("img/LafProject.png")) . '" />';
这就是我尝试使用上面的代码时发生的情况:
(与第一种方式相同,但附加了另一个文件名)
解决方案
我认为您错过了一件基本的事情:嵌入的图像也是附件。它们是否也显示为附件取决于您的电子邮件客户端的实现。避免这种情况的唯一方法是使用根本不是附件的图像,也就是说,它们是通过外部 URL 链接的。不幸的是,这通常意味着根本不会显示图像,因为大多数电子邮件客户端应用程序默认不显示图像。
处理这个问题的最好方法是确保你的布局无论有没有图像都看起来和工作得很好,所以特别要利用 alt 属性。
推荐阅读
- javascript - AsyncStorage 在检索项目时返回 Promise
- java - 使用Java获取XML标签的特定子节点
- reactjs - 在 JavaScript 中可视化模式匹配
- python - 我如何让我的 discord.py 机器人阻止人们?
- directus - 使用 Directus 保存更改的问题
- express - 通过 p5 loadImage() 请求图像时,Safari 不会向 Express 发送 cookie
- javascript - localStorage 无法保存信息
- python - Scrapy 加载更多问题 - CSS 选择器
- ios - 如何获取单个 tableview 单元格的产品重量并显示所选产品重量的产品数量?
- ios - 你将如何在 Swift 中扩展嵌套的无约束泛型?