php原生之實現圖片,文件的下載


代碼部分還可以進行優化,如有不對的地方,歡迎留言,感激不盡。

判斷文件路徑是否存在,存在那么就繼續進行。

    /**
     * @desc    實現文件下載
     * @date    2017/7/11 13:15
     * @param	[string $url]
     * @author	1245049149@qq.com
     * @return  [resource]
     */
    public function downPhoto($url){
        if($this->checkLoad($url)){
            Header("Content-type: application/octet-stream");
            Header("Content-Transfer-Encoding: binary");
            Header("Accept-Ranges: bytes");
            //說明:這里的filename生成下載后的文件名,可以進行優化,生成你自己想要的名字,后綴等等
            Header("Content-Disposition: attachment; filename=".$url);
            return readfile($url);
        }else{
            return false;
        }
    }

  

    /**
     * @desc    判斷文件路徑是否存在
     * @date    2017/7/11 13:17
     * @param   [string $url]
     * @author	1245049149@qq.com
     * @return  [bool]
     */
    public function checkLoad($url){
        $ch = curl_init();
        $timeout = 10;
        curl_setopt ($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_HEADER, 1);
        curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
        $contents = curl_exec($ch);
        if (strpos($contents,'200')){
            return true;
        }else{
            return false;
        }
    }

  搞定!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM