• php curl拉取远程图片


    <?php
    $url = "图片绝对地址/thumbnail.jpg";
    $filename = 'curl.jpg';
    getImg($url, $filename);
    /*
      *@通过curl方式获取制定的图片到本地
      *@ 完整的图片地址
      *@ 要存储的文件名
     */
    function getImg($url = "", $filename = "") {
        if(is_dir(basename($filename))) {
            echo "The Dir was not exits";
            return false;
        }
        //去除URL连接上面可能的引号
        $url = preg_replace( '/(?:^['"]+|['"/]+$)/', '', $url );
        $hander = curl_init();
        $fp = fopen($filename,'wb');
        curl_setopt($hander,CURLOPT_URL,$url);
        curl_setopt($hander,CURLOPT_FILE,$fp);
        curl_setopt($hander,CURLOPT_HEADER,0);
        curl_setopt($hander,CURLOPT_FOLLOWLOCATION,1);
        //curl_setopt($hander,CURLOPT_RETURNTRANSFER,false);//以数据流的方式返回数据,当为false是直接显示出来
        curl_setopt($hander,CURLOPT_TIMEOUT,60);
        /*$options = array(
            CURLOPT_URL=> '/thum-f3ccdd27d2000e3f9255a7e3e2c4880020110622095243.jpg',
            CURLOPT_FILE => $fp,
            CURLOPT_HEADER => 0,
            CURLOPT_FOLLOWLOCATION => 1,
            CURLOPT_TIMEOUT => 60
        );
        curl_setopt_array($hander, $options);
        */
        curl_exec($hander);
        curl_close($hander);
        fclose($fp);
        return  true;
    }
    ?>
    复制代码
    复制代码
    $curl = curl_init();
    curl_setopt($curl, CURLOPT_URL, 'ht(空格)tp://ww(空格)w.fantuan(空格)pu.com/data/attachment/forum/201405/27/001523qiithinnccttzc6i.jpg'); 
    curl_setopt($curl, CURLOPT_REFERER, '');
    curl_setopt($curl, CURLOPT_USERAGENT, 'Baiduspider');
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); 
    $result = curl_exec($curl);
    header('Content-type: image/JPEG');
    echo $result;
    复制代码

    转为base64

    $imgtxt = file_get_content('test.jpg');
    file_put_content('test.txt', base64_encode($imgtxt));
    

      

    关键是设置CURLOPT_RETURNTRANSFER为1,不立刻显示,然后设置header,让网页以jpeg方式解释,最后才echo输出数据;

  • 相关阅读:
    linux服务器时间同步
    07_DICTIONARY_ACCESSIBILITY
    Oracle监听静态注册和动态注册
    Oracle安装基本步骤
    笔试面试(2)阿里巴巴2014秋季校园招聘-软件研发工程师笔试题详解
    Global and Local Coordinate Systems
    齐次坐标(Homogeneous Coordinates)
    朴素贝叶斯分类器的应用
    图像数据到网格数据-1——MarchingCubes算法
    PCL源码剖析之MarchingCubes算法
  • 原文地址:https://www.cnblogs.com/xiezhi/p/6288900.html
Copyright © 2020-2023  润新知