首页 >后端开发 >php教程 >如何在 PHP 中使用 cURL 将图像从 URL 保存到我的服务器?

如何在 PHP 中使用 cURL 将图像从 URL 保存到我的服务器?

Linda Hamilton
Linda Hamilton原创
2024-11-23 07:03:23787浏览

How Can I Save Images from URLs to My Server Using cURL in PHP?

在 PHP 中使用 CURL 从 URL 保存文件

为了将指定 URL 中的图像存储到服务器上的目录中,了解如何在 PHP 中使用 CURL 至关重要。以下是实现此目标的可能步骤:

原始代码:

function GetImageFromUrl($link)
{
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_POST, 0);
    curl_setopt($ch,CURLOPT_URL,$link);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $result = curl_exec($ch);
    curl_close($ch);
    return $result;
}

$sourcecode = GetImageFromUrl($iticon);
$savefile = fopen(' /img/uploads/' . $iconfilename, 'w');
fwrite($savefile, $sourcecode);
fclose($savefile);

改进的解决方案:

增强所提供代码的功能,另一种方法是推荐:

function grab_image($url,$saveto){
    $ch = curl_init ($url);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_BINARYTRANSFER,1);
    $raw=curl_exec($ch);
    curl_close ($ch);
    if(file_exists($saveto)){
        unlink($saveto);
    }
    $fp = fopen($saveto,'x');
    fwrite($fp, $raw);
    fclose($fp);
}

其他推荐:

在您的 php.ini 文件中,确保 allowed_url_fopen 设置为启用。此设置对于启用外部 URL 访问至关重要。

以上是如何在 PHP 中使用 cURL 将图像从 URL 保存到我的服务器?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn