相關(guān)關(guān)鍵詞
關(guān)于我們
最新文章
- PHP中opcode緩存簡(jiǎn)單用法分析
- thinkPHP控制器變量在模板中的顯示方法示例
- PHP move_uploaded_file() 函數(shù)(將上傳的文件移動(dòng)到新位置)
- dirname(__FILE__)的含義和應(yīng)用說明
- thinkPHP5框架實(shí)現(xiàn)分頁查詢功能的方法示例
- PHP中單雙號(hào)與變量
- PHP獲得當(dāng)日零點(diǎn)時(shí)間戳的方法分析
- Laravel ORM對(duì)Model::find方法進(jìn)行緩存示例詳解
- PHP讀寫文件高并發(fā)處理操作實(shí)例詳解
- 【CLI】利用Curl下載文件實(shí)時(shí)進(jìn)度條顯示的實(shí)現(xiàn)
php 文件下載 出現(xiàn)下載文件內(nèi)容亂碼損壞的解決方法(推薦)
在做PHP程序時(shí),需要使用PHP做的文件下載
那做就做唄把代碼復(fù)制過來改了一改。
很多效果也出來了
那么點(diǎn)擊下載后,恩,本以為搞定了文件下載,誰知道,圖片打開的時(shí)候提示文件損壞,這我就觀察了文件的大小。似乎真是多了 1KB左右。
使用PS打開,恩,提示了損壞,不過圖象可以出來。
那么我就認(rèn)為是 那多出來的 1kb的問題了。
然后,我把一個(gè)txt上傳上去,然后下載.
果然發(fā)現(xiàn),文件的前面以及后面,都多了幾個(gè) 字符。
那我就在想應(yīng)該怎么去掉啊.各種百度,谷歌,上論壇提問.
最后,經(jīng)過我一個(gè)多小時(shí)的搜索,終于找到了解決辦法.
代碼如下
public function download() { $upload=M('upload'); $data=$upload->find($_GET['id']); if(empty($data)){ header('HTTP/1.0 404 Not Found'); header('Location: .'); }else{ $path='./public/Uploads/'.$data['savename']; header("Content-Type:".$data['type']); header('Content-Disposition: attachment; filename="'.$data['name'].'"'); header('Content-Length:'.$data['size']); ob_clean(); flush(); readfile($path); } }