2015-01-03 216 views
2

我現在用的是phpexcel,這是從codeplex內置最新PHPExcel_1.8.0_docMarkBakerSOphpexcel文件下載問題

點,我需要我看看下載的05featuredemo.php例子是

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

以上用於將文件保存在腳本位置,但是我怎樣才能使它成爲簡單的可下載文件。

我試着用

$objWriter->save('php://output'); 

但它並沒有下載所生成的文件。我該怎麼做,我應該做什麼其他事情?

+0

以正常的方式保存文件的工作?當你嘗試了什麼'php:// output'時,發生了什麼?你有沒有在瀏覽器中看到任何東西,你有錯誤嗎? – GolezTrol

+0

我用'php://輸出'試過了,什麼也沒有發生。現在我正在嘗試使用標題,謝謝 –

回答

4

如果您發送除HTML以外的其他內容到瀏覽器,那麼您需要發送適當的頭文件,以便瀏覽器知道如何處理它。

有資格Redirect output to a client’s web browser,說明這一點的開發者文檔的一部分,而且它也顯示出類似01simple-download-xls.php01simple-download-xlsx.php

+0

謝謝我正在嘗試發送標題 –

+0

我嘗試** **將輸出重定向到客戶端的Web瀏覽器(Excel5)**如** 01simple-download-xls.php中所述* *但下載的文件要求**創建新的PHPExcel對象**和內部不可讀的文本,:(這裏是我的代碼http://paste.ofcode.org/tuPYZRyc8zbSBhrjCCZWkz –

+0

如果你看看'05featuredemo.inc.php'文件中,您會發現它在各個點回顯屏幕上的信息....請閱讀我引用的有關任何正在被回顯的信息的文檔部分中的注意事項....然後將所有回顯語句註釋掉'05featuredemo.inc.php'並重試 –

0

例子。如果你想自己給名字,那麼你可以指定我在$a指定。

我想從使用這個函數的地方使用一個文件名,所以我把這個名字連接到excel文件名,並將當前日期附加到文件名。

注意:LogReport是我的文件將被下載的文件夾。

self::$objPHPExcel = new PHPExcel(); 
$objWriter = PHPExcel_IOFactory::createWriter(self::$objPHPExcel, 'Excel2007'); 
     $a = 'Log' . self::$filename . date("Y-m-d") . '.xlsx'; 
     $objWriter->save(__DIR__ . '/LogReport/' . $a);