2014-07-14 104 views
1

我有一些問題使用phpexcel api。如何將數據填充到模板excel由php不帶api

這個api是爲了填充數據而存在的模板excel。

所以,我想用純php編寫而不使用任何api。

我想知道如何將數據填充到純php模板excel。

請給我一些建議。謝謝:)

+0

祝你好運。 Excel .xls是一種非常複雜的格式,僅僅是凡人不能理解的。 .xslx只是稍微少一些。要麼使用API​​,要麼不生成本地Excel。寫html,寫csv,excel可以導入的東西。 –

+0

如果您知道phpexcel以外的任何api,請與我分享。謝謝:) – user3678411

+1

請注意,PHPExcel __is__「純PHP」。 [此列表中有很多其他庫](http://stackoverflow.com/questions/3930975/alternative-for-php-excel/3931142#3931142);但是如果你想在不使用庫的情況下做到這一點,那麼我希望你在寫它的時候好運 –

回答

1

xls文件是專有二進制文件格式,相當複雜,也被稱爲Excel的BIFF,您可以在這裏找到

xlsx文件是「標準化」的開放格式。它基本上是一個zip文件(重命名爲* .zip或提取物)的幾個xml文件內

的一般信息,請http://en.wikipedia.org/wiki/Office_Open_XML

更詳細的信息可從

如果您希望能夠做任何事情,甚至新文件格式都是相當複雜的。在這種情況下,重複使用@ mark-baker建議的現有PHP庫中幾個人/年的開發工作(包括調試)是合理的

如果您只需要執行特定任務填充現有xlsx模板文件中的一些數據,那麼你只需要

  1. 一個PHP函數用於複製文件
  2. 一個PHP函數與zip文件
  3. 和PHP函數工作與xml文件工作
  4. documentation(來自以上鍊接)或Excel.exe形式的可執行文檔

編輯更好地鏈接到舊的和新的Excel文件格式的規範是由馬克·貝克提供的

+1

這是一個常見的誤解,您不需要查看OpenOffice反轉的BIFF文件規範; Microsoft已完全公開___公開____記錄在http://msdn.microsoft.com/en-us/library/cc313154(v=office.12).aspx或http://download.microsoft.com/download/2/ 4/8/24862317-78F0-4C4B-B355-C7B2C1D997DB/[MS-XLS] .pdf(作爲可下載的PDF)。 –

+1

有關OfficeOpenXML格式的完整規範,請參閱http://www.ecma-international.org/news/TC45_current_work/TC45_available_docs.htm –

+0

@MarkBaker我記得** **之前的日子** Microsoft在Microsoft之前記錄了BIFF和** * * OpenOffice充分記錄了它,並且我必須自己猜測魔法二進制常量的含義,大約在2000年左右,所以我不知道你是什麼樣的誤解。 您的鏈接非常好。你能直接嵌入它們(我同意)嗎?或者我必須自己編輯它? – xmojmr