通过https和php获取图像

通过https和php获取图像,php,image,https,Php,Image,Https,嘿 我正在尝试在php中通过https获取图像 我发现的是这样的代码,它显示了一幅宽度正确但高度错误的空白图像: function getSslPage($url) { $ch = curl_init(); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_HEADER, false); curl_setopt($ch, CUR

我正在尝试在php中通过https获取图像

我发现的是这样的代码,它显示了一幅宽度正确但高度错误的空白图像:

    function getSslPage($url) {
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
        curl_setopt($ch, CURLOPT_HEADER, false);
        curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_REFERER, $url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        $result = curl_exec($ch);
        curl_close($ch);
        return $result;
    }

    echo getSslPage("https://www...");
我非常感谢你的帮助

它应该会起作用

尝试运行此代码

function getSslPage($url) {
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_HEADER, false);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_REFERER, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    $result = curl_exec($ch);
$ctype="image/png";
header('Content-type: ' . $ctype);
    curl_close($ch);
    return $result;
}

echo getSslPage("https://ssl.gstatic.com/accounts/services/mail/phone.png");

在任何情况下都应该这样做:

$ch = curl_init ($source_url);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_BINARYTRANSFER,true);
curl_setopt ($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$rawdata=curl_exec($ch);
curl_close ($ch);

$fp = fopen($local_file,'w');
fwrite($fp, $rawdata);
fclose($fp)

使用
curl\u error()
查看出了什么问题
curl
不会修改图像尺寸,可能与图像有关!几乎可以肯定,除了图像数据之外,还有其他输出内容(例如PHP错误消息或开头的空格
对不起..我对PHP和web开发不熟悉..当我尝试“echo curl_error($ch);”为了得到一些错误信息,所以我什么也没做。有人能告诉我通过https显示图像的正确方法吗?请解释一下,这样像我这样的人就可以理解了。;)