中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何實現php代碼文件下載

發布時間:2020-08-06 09:52:13 來源:億速云 閱讀:165 作者:Leah 欄目:編程語言

本篇文章為大家展示了如何實現php代碼文件下載,代碼簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

在PHP中可以通過header方法實現文件下載,其語法為“header('Content-type: application/pdf');”,用于指定下載文檔的類型。

PHP通過header實現文本文件下載的代碼

所謂實現文本文件的下載就是說當我們點擊一個文本文件的鏈接的時候不是打開這個文件,而是彈出一個下載對話框讓我們下載

這就是今天討論的主要問題。PHP幫助文檔里面關于PHP通過header觸發下載的說明比較簡單,而網上關于此方面的文章也少的可憐,有很多文章都無法實現所需要的效果。今天我也來談一下這個方面的話題,如果你感覺比網上的某些文章有所改進,那我就很知足了。

如果從準確的角度來說,那PHP文檔是最準確的,因為它很簡練的列出了實現文本類文件觸發下載所需要的三條語句,以PDF為例就是:

代碼如下:

// We'll be outputting a PDF
header('Content-type: application/pdf');
// It will be called downloaded.pdf
header('Content-Disposition: attachment; filename="downloaded.pdf"');
// The PDF source is in original.pdf
readfile('original.pdf');

這三句是正確的,但是在真正用的過程中很容易出現一些無法預料的問題,如果你是一個很仔細的人的話,也可以很容易的避免這些問題。而我不是,所以我就遇到了這樣的問題,這里就以我的問題來簡單說一下。

對于第一句,應該沒啥說的,是必須的,只要改一下文檔的類型就行,例如是下載txt文件,那就改為header(‘Content-type: application/txt');,第二句也沒啥說的,就是為你的下載文檔起一個名字,如果是txt文件的話,可以改為header(‘Content-Disposition: attachment; filename=”downloaded.txt”‘);,第三句的問題就比較多了,readfile這個函數的意思就是讀取一個文件然后輸出,這里文件的路徑需要是真實的文件路徑,如果是downloads文件夾下面的一個original.txt文件,可以這樣寫readfile(‘downloads/original.txt');,而如果提交的頁面會輸出文本等字符,那么下載到的文件會是原文件original.txt和提交的頁面輸出的文字的混合文件。我在這里就缺少了仔細的觀察,一看下面不對就立即去查代碼了,而沒發現上面的文本就是我需要的內容,發現了這部分內容,你可能就很快想到怎么來解決這個問題了,也就是關閉提交到的頁面的文本內容的輸出。

到這里,我們的問題就解決了,從而也就實現了文本文件鏈接被點擊的時候會觸發下載對話框的效果。

上述內容就是如何實現php代碼文件下載,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

蛟河市| 新晃| 昌平区| 昆山市| 天台县| 外汇| 苍梧县| 雷波县| 安乡县| 神农架林区| 多伦县| 曲阳县| 安化县| 重庆市| 镇远县| 察雅县| 南通市| 永修县| 靖西县| 吴川市| 普格县| 红河县| 达孜县| 泸定县| 米林县| 扎囊县| 邹平县| 南城县| 额尔古纳市| 石家庄市| 隆林| 顺平县| 三台县| 绥滨县| 丰宁| 阜阳市| 丽水市| 惠水县| 温州市| 裕民县| 安福县|