首頁 >後端開發 >PHP問題 >php下載圖片打不開怎麼辦

php下載圖片打不開怎麼辦

藏色散人
藏色散人原創
2020-08-13 09:59:203151瀏覽

php下載圖片打不開的解決方法:先開啟相關的PHP檔案;然後在檔案中加入「ob_clean」函數,用來丟棄輸出緩衝區中的內容即可。

php下載圖片打不開怎麼辦

推薦:《PHP影片教學

php下載圖片開啟失敗!

最近寫了一個圖片下載,下載成功了,結果打開說文件錯誤,打不開,找了半天

度娘說是,BOM的問題,然後改變編碼格式為​​utf-8無BOM格式,上傳之後問題仍舊。

最後添加ob_clean();問題解決

ob_clean這個函數的作用就是用來丟棄輸出緩衝區中的內容,如果你的網站有許多生成的圖片類文件,那麼想要存取正確,就要經常清除緩衝區。

下面是我的程式碼:

function download($file_path,$file_name){
//    header("Content-type:text/html;charset=utf-8");
    //首先要判断给定的文件存在与否
    if(!file_exists($file_path)){
        return false;
    }
    $fp=fopen($file_path,"r");
    ob_clean();
    $file_size=filesize($file_path);
    //下载文件需要用到的头
    Header("Content-type: application/octet-stream");
    Header("Accept-Ranges: bytes");
    Header("Accept-Length:".$file_size);
    Header("Content-Disposition: attachment; filename=".$file_name);
    $buffer=1024;
    $file_count=0;
    //向浏览器返回数据
    while(!feof($fp) && $file_count<$file_size){
        $file_con=fread($fp,$buffer);
        $file_count+=$buffer;
        echo $file_con;
    }
    fclose($fp);
}

以上是php下載圖片打不開怎麼辦的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn