dqsot35145 2014-11-21 17:36
浏览 142
已采纳

在PHP中保存来自url的图像

I'm trying to save a image from following link. I've used cURL library and file_put_contents() function with no success. When I run the script, a HTTP error happens and the image is not saved. The link is: http://pocanga.cptec.inpe.br/repositorio5/goes12/goes12_web/no_realcada_alta/2012/01/S11219780_201201010015.jpg

$outputPath = "img/image.jpg";
file_put_contents($outputPath, file_get_contents($link));

Maybe file_get_contents() unfortunatelly doesn't accept url subdomain.

  • 写回答

1条回答 默认 最新

  • dongqiang8474 2014-11-21 17:47
    关注

    This works for me.

    The header information did the trick. Otherwise it was putting a blank image.

    $context = stream_context_create(array(
        'http' => array(
            'ignore_errors' => true,
            'header' => "User-Agent:MyAgent/1.0
    "
         )
    ));
    
    $url = 'http://pocanga.cptec.inpe.br/repositorio5/goes12/goes12_web/no_realcada_alta/2012/01/S11219780_201201010015.jpg';
    $img = 'img.jpg';
    file_put_contents($img, file_get_contents($url, FALSE, $context));
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?