【发布时间】:2015-07-06 20:46:56
【问题描述】:
我有一个文件,我在其中逐行读取 URL。 URL 是图像的链接。所有图像链接都在浏览器中工作。现在我想将它们下载到我当前的目录。为了记录,我需要使用 PHP 脚本。
这就是我获取图像的方式:
for ($j; $j< $count;$j++)
{
// Get Image-URL as String and then do getImage
$image = $arr[$j];
$newname = $j;
getImage($image, $newname);
}
function getImage($image, $newname)
{
$ch = curl_init($image);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_BINARYTRANSFER,1);
$rawdata=curl_exec ($ch);
curl_close ($ch);
$fp = fopen("$newname.jpg",'w');
fwrite($fp, $rawdata);
fclose($fp);
}
但问题是,我得到了所有图像,只有最后一张是可见的。其他我无法打开,它们只有 1KB。
那么我做错了什么?
另外我还需要稍后下载 png-Files,所以我可以将 $newname.jpg 更改为 $newname.png 吗?
提前谢谢,我真的需要一个快速的答案,在这里坐了好几个小时,想弄清楚。
【问题讨论】:
-
你在 $arr 里面有什么?
-
$j的起始值是多少? -
$j 可能从 null 开始,这在挪威语中表示 0。 :)
-
这只是一个sn-p。 $j 当然从 0 开始。 $arr 是文件中的 url。他们是真的,我附和他们,他们很好,所以没有问题。
-
@OIS 这不是 100% 正确的,但在这种情况下你是对的 ;)