使用Curl下载多个图像

时间:2019-04-25 20:27:26

标签: php curl

如何从多个URL降级图像,现在仅适用于一个URL。 我认为它应该是数组,但是即使那样也不能使它工作。

<?php 

$url_to_image = 'https://images.somesite.1.jpg', 'https://images.somesite.2.jpg';

$ch = curl_init($url_to_image);

$my_save_dir = 'images/';
$filename = basename($url_to_image);
$complete_save_loc = $my_save_dir . $filename;

$fp = fopen($complete_save_loc, 'wb');

curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_exec($ch);
curl_close($ch);
fclose($fp);

只能用一个URL下载,但是我有10个URL可以连续下载。

2 个答案:

答案 0 :(得分:2)

你好

您自己找到了答案。

您必须按照您所说的将图像放入数组并在其上循环。

str.bytes.map { |u| u & MASK }

答案 1 :(得分:0)

您需要遍历一个数组。 $ url_to_image不是您的代码段中的数组

$url_to_image = ['https://images.somesite.1.jpg', 'https://images.somesite.2.jpg'];
$my_save_dir = 'images/';

foreach ($url_to_image as $url) {
$ch = curl_init($url);
$filename = basename($url);
$complete_save_loc = $my_save_dir . $filename;
$fp = fopen($complete_save_loc, 'wb');

curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_exec($ch);
curl_close($ch);
fclose($fp);
}