我在使用phpexcel api时有一些问题。
这个API需要很长时间来填充数据到现有的模板excel.
所以,我想用纯php编写,不使用任何api。
我想知道如何填写数据模板excel纯php。
请给我一些建议。谢谢:)
旧的xls
文件是专有的二进制文件格式,相当复杂,也称为Excel BIFF,你可以找到
- 逆向工程规范:http://www.openoffice.org/sc/excelfileformat.pdf
- 微软的公开规范:[MS-XLS]: Excel二进制文件格式(.xls)结构(PDF)和[MS-XLS]: Excel二进制文件格式(.xls)结构(HTML)
新的xlsx
文件是"标准化"的开放格式。它基本上是一个zip
文件(重命名为*.zip和提取)与少数xml
文件在
一些一般信息可在http://en.wikipedia.org/wiki/Office_Open_XML
更详细的文档可从
获得- MSDN: Office→Dev Center→Open XML SDK→了解Open XML文件格式
- 和来自Ecma International→Ecma Office Open XML文件格式标准
如果你想要能够做任何事情,即使是新的文件格式也是相当复杂的。在这种情况下,按照@mark-baker的建议,重用以现有PHP库的形式实现的几个人/年的开发工作(包括调试)是合理的
如果你只需要做一个特定的任务,例如填充现有的xlsx
模板文件与一些数据,那么你只需要
- 一个PHP函数,用于复制文件
- 与
zip
文件一起工作的PHP函数 - 和一个PHP函数来处理
xml
文件 - 和
documentation
(从上面的链接)或以Excel.exe 形式的可执行文档
EDIT Mark Baker为新旧Excel文件格式的规范提供了更好的链接