php图像显示无需在邮件中下载

Posted

技术标签:

【中文标题】php图像显示无需在邮件中下载【英文标题】:php image display without download in mail 【发布时间】:2011-04-01 13:22:03 【问题描述】:

您好,我想使用 php mailer 类发送 html 格式的图像,但下载后图像会在邮件中显示。但我想在不下载的情况下显示图像。邮件类中是否有任何选项,或者有另一种方法。 或者我必须以另一种格式发送图像。

【问题讨论】:

“下载”是什么意思? 【参考方案1】:

嗯,只有两种可能的答案:

您不想在电子邮件中嵌入实际的图像文件,然后只需将<img> 元素放入电子邮件中,链接到远程位置的图像,就像使用任何其他 HTML 页面一样。然后交叉手指,希望客户端启用 HTML 电子邮件并允许显示远程图像。

您不想从远程服务器引用文件,而是将其与电子邮件一起嵌入。在这种情况下,请参考How To Embed Images in HTML EMail 或Attaching an image to an email

【讨论】:

【参考方案2】:

如果您使用 PHP Mailer...

$mail = new PHPMailer();    
$mail->SetFrom("blah@blah.com");
$mail->AddAddress("blah@blah.com");
$mail->Subject = "Blah"
$mail->MsgHTML('<html><body><img src="logo.jpg">Hello</body></html>');
$mail->AddAttachment("logo.jpg");
$mail->Send();

使用AddAttachment PHP Mailer 将检查您的HTML 中对该文件的引用并自动为您嵌入。

【讨论】:

【参考方案3】:

伙计,它真的很简单。编写 html 代码就像编写网页一样。在 src 属性中给出图片的完整 url。

不要忘记在 body html 上使用函数 eregi_replace()

$html_message = eregi_replace("[\]",'',$body_html_string);

恩戈耶!!!! ;)

【讨论】:

以上是关于php图像显示无需在邮件中下载的主要内容,如果未能解决你的问题,请参考以下文章

IONIC - 如何显示来自firebase存储的图像而无需下载它[关闭]

PHP电子邮件包括但不显示内嵌图像

PHP 电子邮件包括但不显示内联图像

如何在电子邮件中显示从Laravel发送的图像

通过 AsyncTask 下载图像并将其显示在 Imageview 中而不存储在 sdcard 中

在邮件中嵌入图像而无需物理图像文件