【发布时间】:2015-03-19 21:34:43
【问题描述】:
我需要从 PHP 数组生成一个 xls 文件。我知道如何实现这一点:发送正确的标头并循环 <table>、<tr> 和 <td>。问题是我在一个不允许我使用 ob_start(); 的环境中工作。及其派生函数。我这样说是因为当我在 PHP 脚本中间运行这段代码时......
// Lot of unwanted output
// collecting data and defining $filename
header("Content-Type: application/vnd.ms-excel");
header("Content-Disposition: inline; filename=$filename");
// foreach stuff here
// Lot of unwanted output
...生成的 xls 文件还包含页面的输出。基本上我是在网页中间生成 xls,所以你知道在 xls 中我有整个页面,包括页眉、内容和页脚。我知道我应该 curl(); 到一个只有我的标题的外部文件,但环境是硬编码的。我应该重新建立与数据库的连接,包括所有必需的文件,为这个非常小的问题获得权限(...)。换句话说,我不想重新发明轮子。
说我的问题是:除了生成 xls 的脚本之外,有没有办法清除、刷新、销毁(...)一切?请记住,我无法在脚本之前和之后编辑任何内容。
谢谢。
【问题讨论】:
-
在与平台无关的网页中间生成特定于平台的文件格式有点讽刺。您是否可以改为生成 CSV?
-
使用 phpexcel 库。或在浏览器中打开一个新选项卡并在那里输出您的文件。
-
是的,我也可以生成 CSV,但问题是一样的。关于 PHPExcel 我不想安装整个库来完成像生成单个 xls 文件这样的简单任务。
标签: php html curl output export-to-excel