PHP强制下载多个图像URL file_get_contents

时间:2018-08-11 09:26:21

标签: php

我有问题。 我想将多个图像形式的URL下载到访问者设备。我不需要压缩文件。只需一个一个下载

这是我的代码:

$files = array(
    'https://example.com/image.jpg',
    'https://example.com/image2.jpg',
    'https://example.com/image3.jpg'
);

foreach($files as $file)
{
    $filename = 'images.jpg';

function forceDownload($filename, $type = "image/jpeg") {
    header('Content-Type: '.$type.'; charset=utf-8');
    header('Content-Disposition: attachment; filename="'.$filename.'"');
}

forceDownload($filename, "image/jpeg");
echo file_get_contents($file);
}

谢谢

1 个答案:

答案 0 :(得分:0)

您不能,HTTP没有提供一种通过一个请求发送多个文件的机制。

执行此操作的唯一明智的方法是将图像压缩到一个zip文件中并下载。

或...

我想在页面上显示图像,并为每个图像分别提供一个下载按钮。

同样,您的代码是错误的,您将文件名设置为images.jpg,并在每次通过foreach循环时声明一个函数。