【发布时间】:2022-01-26 13:55:56
【问题描述】:
我创建了一个带有一些文本、表格和图表的自动邮件。图表采用快速图表设计,采用以下方法。
$chartConfig= "{
type: 'line',
data: {
labels: [$date_array2],
datasets: [{
data: [$value_array2],
backgroundColor: ['#F5DEB3'],
}]
},
options: {
title: {
display: true,
text: 'UGW Peak Throughput in Malabe_LD_vUGW, in Gbps',
},
legend: {
display: false
}
}
}";
$url1 = 'https://quickchart.io/chart?w=500&h=200&c=' . urlencode($chartConfig);
$messagenew.= "Chart :<br><br><img src=\"$url1 \">
我正确收到了电子邮件。但问题是我无法直接看到图表。每次我需要点击下载图片来查看图表。此外,我正在使用 VPN 连接查看邮件,但我看不到图像(即使它已下载)。没有VPN连接我可以在下载后看到图片。
有人可以提出更好的方法来使用 PHP 将图表附加到电子邮件中吗?
【问题讨论】:
-
默认情况下,许多邮件客户端会阻止从 Web 服务器请求的图像(因为当收件人打开邮件时,它们会允许跟踪。)您实际上应该将此图像直接嵌入到邮件中。
-
@CBroe 谢谢。你能提供一些可行的例子来做到这一点吗?我该怎么做?
-
如果您还没有使用专门的邮件程序库发送邮件,那么您应该首先获得一个 - PHPMailer 是一个流行的选择。如何使用可以研究的图像将图像嵌入到邮件中,这不是一个新主题,并且在图书馆的文档中也有介绍。
-
不过,您将需要图像的本地副本;但是使用 file_get_contents 或 cURL,您应该能够从您到达那里的 URL 请求图像数据,并将其存储在本地。
标签: php outlook email-attachments