一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

PHP通過header實(shí)現(xiàn)文本文件下載的代碼

這就是今天討論的主要問題。php幫助文檔里面關(guān)于php通過header觸發(fā)下載的說明比較簡單,而網(wǎng)上關(guān)于此方面的文章也少的可憐,有很多文章都無法實(shí)現(xiàn)所需要的效果。今天我也來談一下這個(gè)方面的話題,如果你感覺比網(wǎng)上的某些文章有所改進(jìn),那我就很知足了。

如果從準(zhǔn)確的角度來說,那php文檔是最準(zhǔn)確的,因?yàn)樗芎喚毜牧谐隽藢?shí)現(xiàn)文本類文件觸發(fā)下載所需要的三條語句,以PDF為例就是:
復(fù)制代碼 代碼如下:
// 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');

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

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

到這里,我們的問題就解決了,從而也就實(shí)現(xiàn)了文本文件鏈接被點(diǎn)擊的時(shí)候會觸發(fā)下載對話框的效果。

php技術(shù)PHP通過header實(shí)現(xiàn)文本文件下載的代碼,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 九九久久国产精品免费热6 九九久久精品 | 一区二区三区国产美女在线播放 | 16女性下面扒开无遮挡免费 | 国产成人精品男人免费 | 伊人色综合久久大香 | 国产成人啪精品午夜在线播放 | 日韩理论在线 | 国产大片好看免费播放 | 成人国产在线视频在线观看 | 午夜精品久视频在线观看 | 久久天天丁香婷婷中文字幕 | 伊人色婷婷 | 国产精品国产三级国快看 | 亚洲四色 | 视频一区二区国产 | 婷婷毛片 | 免费看一级做a爰片久久 | 亚洲一区二区三区在线播放 | 中文国产成人精品少久久 | 99国产精品欧美久久久久久影院 | 高清一区二区三区 | 黄色激情视频网址 | 四虎国产精品免费久久影院 | 亚洲精品综合久久 | 美女搞黄网站 | 色婷婷中文字幕 | 国产全黄一级毛片 | 国产麻豆综合视频在线观看 | 狼人久久尹人香蕉尹人 | 搞黄免费视频 | 国产精品久久新婚兰兰 | 影音先锋色偷偷米奇四色 | 久久综合久久综合久久综合 | www.av在线.com| 亚洲青草视频 | 二区在线视频 | 加勒比色 | 91视频最新地址 | 一本大道加勒比久久综合 | 怡红院亚洲 | 最近最新中文字幕在线第一页 |