在PHP5.3中下载许多图像的最快方法?

在PHP5.3中下载许多图像的最快方法?,php,php-5.3,download,Php,Php 5.3,Download,我正在编写集成在线商店的脚本 我有这样的代码(简化): 连接远程服务器,下载图像需要很多时间,当我有大约500个产品要导入时,这就不好了 我在考虑一些并行下载,但我不知道如何开始 我能做些什么来加快速度呢?这个问题有两种主要的解决方案: 1) 不要直接下载图像,而是将所有URL存储在一个文件中(最终也是目标路径)。然后,使用cron每隔n分钟调用一个脚本,该脚本将为您进行下载。如果很多人同时提交下载,这是避免服务器过载的最佳方法 2) 使用exec()PHP函数。这样,您可以调用所需的每个系统命

我正在编写集成在线商店的脚本

我有这样的代码(简化):

连接远程服务器,下载图像需要很多时间,当我有大约500个产品要导入时,这就不好了

我在考虑一些并行下载,但我不知道如何开始


我能做些什么来加快速度呢?

这个问题有两种主要的解决方案:

1) 不要直接下载图像,而是将所有URL存储在一个文件中(最终也是目标路径)。然后,使用cron每隔n分钟调用一个脚本,该脚本将为您进行下载。如果很多人同时提交下载,这是避免服务器过载的最佳方法


2) 使用exec()PHP函数。这样,您可以调用所需的每个系统命令。在你的情况下通常是卷曲的。通过这种方式,您可以在末尾添加&以将其置于背景中。您甚至可以存储警告和错误,将它们重定向到一个文件。

我会尝试将其异步化,但我没有足够的PhP知识,甚至不知道这是否可能。。。应该help@Clive我没有意识到CURL支持并行下载。也许你应该添加答案。可能使用sftp@Kamil我在5.3和5.4上使用它没有任何问题。。。
// $asImageurls - array of string with image url's

foreach($asImageurls as $sImageUrl)
{
$imageContent = @file_get_contents($image);
    // create filename, save image etc.
}