使用PHP強制(zhì)下載PDF文件
- 作(zuò)者:admin
- 發表時(shí)間(jiān):2013-07-02 14:17:17
- 來(lái)源:未知
我們有(yǒu)時(shí)會(huì)遇到這樣一種情況,當需要下載一個(gè)PDF文件時(shí),如果不經處理(lǐ)會(huì)直接在浏覽器(qì)裏打開(kāi)PDF文件,然後再需要通(tōng)過另存為(wèi)才能保存下載文件。本文将通(tōng)過PHP來(lái)實現直接下載PDF文件。
實現原理(lǐ):我們僅僅隻需要修改頁面HTTP頭,把Content-Type設置為(wèi)force-download,問題即可(kě)解決。請(qǐng)看代碼:
forceDownload("static/file/TOOL"); function forceDownload($filename) { if (false == file_exists($filename)) { return false; } // http headers header('Content-Type: application-x/force-download'); header('Content-Disposition: attachment; filename="' . basename($filename) .'"'); header('Content-length: ' . filesize($filename)); // for IE6 if (false === strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE 6')) { header('Cache-Control: no-cache, must-revalidate'); } header('Pragma: no-cache'); // read file content and output return readfile($filename);; }
為(wèi)了方便,我寫了一個(gè)函數(shù)forceDownload(),然後通(tōng)過調用該函數(shù)即可(kě)。請(qǐng)點擊這裏看演示DEMO。
聯系我們
一切良好工作(zuò)的開(kāi)始,都需相互之間(jiān)的溝通(tōng)搭橋,歡迎咨詢。