在PHP中复制远程URL的所有图像

时间:2013-12-09 04:12:16

标签: php file-io glob

我需要从远程网址复制所有图片。 GLOB无法正常工作。 例如:URL = http://www.example.com/media/k2/galleries/124 这里124是目录名。我需要使用PHP代码复制该目录中的所有图像。 怎么做?

2 个答案:

答案 0 :(得分:1)

如果您的服务器上启用了PHP5并启用了HTTP流包装器,则将其复制到本地文件非常简单:

 copy('http://somedomain.com/file.jpeg', '/tmp/file.jpeg');

这将处理所需的任何流水线等。如果您需要提供一些HTTP参数,则可以提供第三个“流上下文”参数。

尝试使用以下代码打开目录并获取其所有文件名

  $url='foldername';
  $dir = opendir($url);

  //List files in images directory
  while (($file = readdir($dir)) !== false)
    {

    echo "filename: " . $file . "<br />";
    }
  closedir($dir); 

......输出:

filename: a.gif 
filename: file.html
filename: g.gif
filename: gg.html

答案 1 :(得分:0)

除非你有一些花哨的文件系统设置,该url当然是http协议。 GLOB用于(本地)文件系统操作。使用curl或者在php中用于http的内置内容。顺便说一下,您需要知道要下载的所有网址。仅仅因为124碰巧是网络服务器上的目录并不重要......没有DIR命令来列出网络服务器上的所有文件(实际上是网址)。