首页 >后端开发 >php教程 >如何使用 PHP 和 Curl 从 URL 下载图像?

如何使用 PHP 和 Curl 从 URL 下载图像?

Barbara Streisand
Barbara Streisand原创
2024-11-30 14:15:12356浏览

How Can I Download Images from a URL using PHP and Curl?

使用 PHP 和 Curl 通过 URL 下载图像文件

将图像文件从远程 URL 保存到服务器是 Web 开发人员的常见任务。这可以使用 PHP 的 Curl 扩展无缝实现。

问题:

开发人员在使用 Curl 从 URL 保存图像文件时遇到了困难。提供的代码似乎没有产生所需的结果。

解决方案:

这是应该解决问题的代码的修改版本:

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);
}

钥匙更改:

  • 为了清晰起见,该函数已重命名为grab_image。
  • CURLOPT_HEADER 设置为 0 以仅检索图像数据。
  • CURLOPT_BINARYTRANSFER 设置为 1 以确保图像保存为二进制数据。
  • 保存文件路径作为第二个参数提供,以允许灵活命名。

其他提示:

在您的 PHP 中配置文件(php.ini),确保启用allow_url_fopen。此设置允许 PHP 通过 URL 打开文件。

以上是如何使用 PHP 和 Curl 从 URL 下载图像?的详细内容。更多信息请关注PHP中文网其他相关文章!

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