2009-06-10 33 views
1

我使用PHP這樣創建一個Excel文件:PHP的Excel創建 - 無效的文件類型

header("Content-type: application/vnd.ms-excel"); 
header("Content-Disposition: attachment; filename=invoice.xls"); 
header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); 
echo "<table><tr><th>Test</th></tr><tr><td>...</td></tr></table>"; 

當我嘗試打開該文件時,Excel會發出警告,該文件類型是不正確的。然而,文件顯示正確,完全像我想要的...

有沒有辦法來防止這個錯誤消息顯示?

回答

1

最好的方法是爲自己創建一個Excel文件並將其保存爲HTML,然後在某個文本編輯器中打開它並查看垃圾。您將最終找到要在PHP腳本中輸出的內容,以便Excel不會抱怨文件類型和擴展名。

+0

謝謝,我會嘗試...除非別人能告訴我什麼'垃圾'我應該包括在我的PHP文件... – Fortega 2009-06-10 08:31:25

+0

最簡單的複製格式是Excel XML文件 - 所以如果你打算採取這種方法,我建議複製它。 – BrynJ 2009-06-10 08:49:15

0

你正在生成的文件輸出並不是真正的excel格式,所以excel是正確的抱怨它。有幾個用於製作excel文件的php軟件包,如phpexcel.net。另一種選擇是將該文件提供爲「普通」.html文件,並指示用戶在Excel中打開它。

希望這會有所幫助!

0

你可以嘗試製表符分隔格式 我不知道這是否會抱怨加載與否 如回聲「$山坳\ T $山坳\ T $山坳\ T $山坳\ n」個

我也有使用梨練成一代庫 他們產生BIFF格式的Excel文件, 這是很簡單的使用,你會得到單元格的格式以及 例如字體,大小,顏色控制等