php - 使用 PHP 以编程方式保存远程图像
问题描述
我正在尝试将一些内容从一种资源迁移到另一种资源中,并且需要保存一些位于远程资源中的图像(数百张)。
假设我只有图像的 URL:
https://www.example.com/some_image.jpg
我想使用 PHP 将它保存到文件系统中。
如果我要上传图像,我基本上会执行以下操作:
<input type="file" name="my_image" />
move_uploaded_file($_FILES['my_image']['tmp_name'], '/my_img_directory');
但由于我只有 URL,我会想象这样的事情:
$img = 'https://www.example.com/some_image.jpg';
$file = readfile($img);
move_uploaded_file($file, '/my_img_directory');
这当然行不通,因为move_uploaded_file()
不将输出缓冲区作为第一个参数。
本质上,我需要在这种方法下$img
进入$_FILES[]
数组。或者可能有其他方法?
解决方案
$image = file_get_contents('http://www.url.com/image.jpg');
file_put_contents('/images/image.jpg', $image); //Where to save the image on your server
推荐阅读
- maven - 如何获取 IntelliJ IDEA 运行配置以利用 Maven 过滤资源?
- cordova - Ionic Cordova Build Android - Gradle 失败
- ruby - rubygems 中的 GEM_DEP_FILES 条目是什么?
- node.js - 如何在nodejs中使用multer从jimp上传图像
- c++ - 二维数组内存管理问题
- python - 尝试将文本和值从 excel 输入 Python 列表
- spring - Spring Webflux 为 SSE 抛出 IOException
- python - 将一个 nd numpy 数组附加到现有的 csv 文件中
- r - ggplot2 - 在图形区域之外画线和注释文本
- c - C字符串递归堆栈复制或......?