【问题标题】:i can't download an image from url php我无法从 url php 下载图像
【发布时间】:2022-09-30 15:57:30
【问题描述】:

我陷入了死胡同,我有一个无法下载的照片的网址。

网址不起作用:

$imageUrl = \'https://www.casaonlineitalia.it/immobili/241/vendita_rusticocasale_capannori_san_ginese_di_compito_capannori_lu_1950039608648520915.jpg\';
@$rawImage = file_get_contents($imageUrl);
if($rawImage)
{
file_put_contents(__DIR__ .\'/img/foto1.jpg\',$rawImage);
echo \'Image Saved\';
}
else
{
echo \'Error Occured\';
}

使用另一个网址所有这些都有效

网址工作:

$imageUrl = \'https://static3.agimonline.com/images/4Zzoy0MDM1fO2M65MTAw5NDYxeO2lkcOjE43NTEw9NTI70ZXh0fOmpw5Zzt25OjE7edzoxc/r/0/1851052.jpg\';
@$rawImage = file_get_contents($imageUrl);
if($rawImage)
{
file_put_contents(__DIR__ .\'/img/foto1.jpg\',$rawImage);
echo \'Image Saved\';
}
else
{
echo \'Error Occured\';
}

你有解释或解决方案吗?

  • 对我来说,这两个代码都有效。检查文件夹权限
  • 删除 @ 以查看所有错误(打开错误报告)。您是否在$rawImage 中收到内容?也许只有你 if ($rawImage) 失败,试试 if (!empty($rawImage))
  • 你得到什么错误?或者使用 Try catch 来获取确切的错误
  • @AbdullaNilam您是否尝试过使用提供的网址?使用第一个 url 它不起作用,而第二个它可以将图像保存在目录中而没有问题
  • 即使没有单个空格修改,两者都可以使用相同的代码。

标签: php image file-get-contents file-put-contents save-image


【解决方案1】:

您没有验证远程图像的 ssl。 忽略对等验证进行测试:

$imageUrl = 'https://www.casaonlineitalia.it/immobili/241/vendita_rusticocasale_capannori_san_ginese_di_compito_capannori_lu_1950039608648520915.jpg';

    $arrContextOptions=array(
        "ssl"=>array(
            "verify_peer"=>false,
            "verify_peer_name"=>false,
        ),
    );

    $rawImage = file_get_contents($imageUrl, false, stream_context_create($arrContextOptions));
    if($rawImage)
    {
        $directory = "img";
        if(!is_dir($directory)) {
            mkdir("img", 0775, true);
        }
        file_put_contents($directory . '/foto1.jpg', $rawImage);
        echo 'Image Saved';
    }
    else
    {
        echo 'Error Occured';
    }

【讨论】:

  • 为什么第二个 URL 可以工作,也就是 https
【解决方案2】:

两个代码都在工作。检查代码不起作用的 /img 文件夹的文件夹权限(w)。

【讨论】:

    猜你喜欢
    • 2018-09-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-12
    • 2014-10-27
    • 1970-01-01
    • 2015-07-25
    • 2012-06-30
    相关资源
    最近更新 更多