0
我在webroot之外保存了很多文檔。PHP在webroot之外下載文件
我想點擊一個鏈接,打開一個新窗口(target =「_ blank」),然後強制下載找到的文件。
這裏就是我這麼遠,但我的研究結果表明狼吞虎嚥-DE-對韓國人在瀏覽器中彈出,而不是強迫下載到桌面:
function download($filelocation){
$filename = basename($filelocation);
if (file_exists($filelocation)) {
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.$filename);
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Pragma: public');
header('Content-Length: ' . filesize($filelocation));
ob_clean();
flush();
readfile($filelocation);
exit;
}
}
在新的瀏覽器窗口,我只是使用該文件的特定路徑調用download()
函數。
這絕對是找到這個文件,但現在我只是想知道我用header()強制通過瀏覽器強制文件。
你試過哪些瀏覽器? – Grilse 2012-02-04 23:10:42
Ehm http://stackoverflow.com/questions/6724257/php-header-attach-avi-file – Vyktor 2012-02-04 23:12:31
你必須告訴瀏覽器什麼是文件應用程序類型,以便它可以調用適當的處理程序。例如,它是一個.jpg圖片還是一個.doc文件? ......就像Vyktor說的那樣...... – dar7yl 2012-02-04 23:13:09