【发布时间】:2015-03-31 14:09:37
【问题描述】:
我想在 php 的电子邮件正文中发送带有图表的电子邮件,但我没有收到。
我已经测试了一些方法,例如图像图表 google(已弃用)、google charts、jqgraph 但没有成功。
【问题讨论】:
标签: php email charts pie-chart
我想在 php 的电子邮件正文中发送带有图表的电子邮件,但我没有收到。
我已经测试了一些方法,例如图像图表 google(已弃用)、google charts、jqgraph 但没有成功。
【问题讨论】:
标签: php email charts pie-chart
一种解决方案是创建在服务器上生成的静态图像并将该图像发送到您的电子邮件中。 javascript 图表库ZingChart 提供了一个特殊的构建来与无头服务器端浏览器 PhantomJS 一起使用,允许您创建图表的 png 图像。 http://www.zingchart.com/docs/features/phantomjs/
我是 ZingChart 开发团队的一员,如果您有任何问题,请告诉我。
【讨论】:
最简单的方法可能是使用静态图像图表生成器。网上有许多不同的服务。为此,我创建了 QuickChart,这是一个用于 Chart.js 图表的开源渲染服务。
既然你标记了你的帖子pie-chart,让我们做一个Chart.js饼图配置(见Chart.js pie chart reference):
{
"type": "pie",
"data": {
"datasets": [
{
"data": [84, 28]
}
],
"labels": ["Data1", "Data2"]
}
}
您可以将此配置放入 PHP 变量中:
$chartConfig = '{
"type": "pie",
"data": {
"datasets": [
{
"data": [84, 28]
}
],
"labels": ["Data1", "Data2"]
}
}';
为https://quickchart.io/chart 端点进行 URL 编码:
$chartUrl = 'https://quickchart.io/chart?c=' . urlencode($chartConfig);
然后,使用标准 HTML <img> 标记将该 URL 直接嵌入到电子邮件中:
$email_body = "Please see my chart: <img src=\"$chartUrl\" />";
它显示下面的图像!
替代方法包括:
【讨论】: