2011-06-10 136 views
0

我想爲用戶添加一個鏈接,以.CSV格式下載數據。將數據輸出到CSV文件

我可以用PHP格式化數據,但是如何讓文件可以下載(單擊並開始下載),而不是在瀏覽器中打開它?

+0

如果你搜索SO(StackOverflow)for「php force download」,你會發現一個gazillion的答案爲你的問題 – afarazit 2011-06-10 17:20:28

+0

啊,他們的關鍵是知道該找什麼!感謝指針。 – santa 2011-06-10 17:22:02

+0

是的,那將是正確的 – afarazit 2011-06-10 17:23:11

回答

2

您可以強制下載使用PHP readfile文件。您可能需要爲您的csv添加適當的標題(如果有必要),例如

header("Content-Type: text/csv"); 

或者使它簡單,你可以這樣做:

header('Content-Disposition: attachment; filename="desired_filename.csv"'); 
header("Content-Type: text/csv"); 
echo 'your formatted content'; 

應該帶來一個下載對話框。希望有所幫助。

1

設置頁眉,

header('Content-Type: application/octet-stream'); 
+0

text/csv將是可壓縮的。在這種情況下,你是否有理由喜歡應用程序/八位字節流? – 2011-06-10 17:25:44

+0

@George,編號只是認爲它是「文本/ ...」類型仍然會鼓勵瀏覽器打開文件。 – 2011-06-10 17:31:34