php下载网络图片到服务器


    /**

  * 下载二维码到服务器

  * @param string $url 图片路径

  * @param string $filestring 要保存的文件名

  */
    private function DownLoadPic($url,$filestring){
        if($url == ""){
            return false;
        }
        $filename = $filestring.'.jpg';
        // 检查路径是否存在,如不存在则创建
        $dir = './upload/qrcode/';
        if (!is_dir($dir)){
            //第三个参数是“true”表示能创建多级目录,iconv防止中文目录乱码
            $res=mkdir(iconv("UTF-8", "GBK", $dir),0777,true);
        }
        ob_start();
        readfile($url);
        $img=ob_get_contents();
        ob_end_clean();
        $size=strlen($img);
        $fp2=fopen('./upload/qrcode/'.$filename,"a");
        if(fwrite($fp2,$img) === false){
            $this->ErrorLogger('dolwload image falied. Error Info: 无法写入图片'.date('Y-m-d H:i:s'));
            exit();
        }
        fclose($fp2);
        return '/upload/qrcode/'.$filename;
    }

private function ErrorLogger($errMsg){
        $logger = fopen('./ErrorLog.txt', 'a+');
        fwrite($logger, date('Y-m-d H:i:s')." Error Info : ".$errMsg."\r\n");
    }

posted @ 2016-11-15 15:46  动灵  阅读(3123)  评论(0编辑  收藏  举报