2011-06-17 106 views
3

我有一個奇怪的問題,PHPExcel遠程保存文件。爲什麼PHPExcel文件在遠程保存時損壞?

這是我使用的瀏覽器下載的代碼:

header('Content-Type: application/vnd.ms-excel'); 
header('Content-Disposition: attachment;filename="filename.xls"'); 
header('Cache-Control: max-age=0'); 
$objWriter->save('php://output'); 

不幸的是,每次我下載這樣的文件不能被既不LibreOfficeMicrosoft Office開放。

但如果我替換這一行所有行:

$objWriter->save(str_replace('.php', '.xls', __FILE__)); 

該文件可以被打開,所有數據/格式化是完美的。唯一的問題是它將它保存在服務器上,就在生成它的控制器的旁邊。

什麼可能導致這種情況,以及如何解決它?

回答

0

當你'遠程'保存時,文件有什麼擴展名?如果它是PHP,你可能想嘗試手動更改它的擴展名爲xls,看看它是否可以工作

+0

擴展很好,它可以像它應該保存一樣,只是當我試圖打開文件時,它會詢問爲編碼和東西。 – jurchiks 2011-06-17 07:42:27

+0

Soooo ......沒有人知道嗎?因爲我完全不知道爲什麼會發生這種情況......它可能與.htaccess有關嗎? – jurchiks 2011-06-25 22:11:53