1

我有使用 php 和 MySQL 从 highcharts 生成的图表,我想将数据导出到 excel(xls) 文件中找到了很多解决方案,但它们都将数据导出到 csv 文件有什么解决方案吗?

4

3 回答 3

1

你不能:P

javascript 对 excel 一个封闭源代码的桌面应用程序一无所知,但是它确实知道 csv,它基本上是一个字符串,但我不确定您是否可以使用 javascript 触发下载,在这种情况下您需要的是一种服务器端语言,例如 php

所以我要做的是 - 一个高级列表 -

  1. 通过附加事件处理程序识别我要导出的行
  2. 对“后端”进行 ajax 调用,发送模型的 id,可能还有 db 表名或任何其他有助于您获取模型的参数
  3. 用 php 处理那个 ajax 调用

    3.1 进行数据库调用,请求该 id 的整个模型

    3.2 使用一些创建excel文件的第三方库

    3.3 触发下载提示

替代步骤 2。

如果您已经拥有 json 中的模型或作为 javascript 对象,您可以对其进行序列化并对“后端”进行 ajax 调用并发送它,这将节省您的 db 调用,然后您将在 php 中反序列化并继续步骤 3.2

如果您可以使用您正在使用的图表类型发布来自 highcharts 网站的链接,这将非常有帮助,例如它是饼图还是条形图等

也许您毕竟可以使用 javascript 触发下载,但只能在兼容 html5 的浏览器上 在内存中创建一个文件供用户下载,而不是通过服务器

于 2013-11-06T10:23:21.180 回答
1

然后你可以使用PHPExcel。这是一个简单的实用程序,用于将您的数据导出到 Excel

于 2013-11-06T09:38:11.690 回答
0

您可以尝试使用用户插件之一将数据导出到 Excel:http: //forum.highcharts.com/highcharts-usage/highchart-export-in-excel-t7816/page15.html

于 2013-11-06T09:40:27.687 回答