图片批量下载

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
<?php
set\_time\_limit(0);

function get_file($url, $folder = "./file") {
set\_time\_limit (24 * 60 * 60); // 设置超时时间
$destination_folder = $folder . '/'; // 文件下载保存目录,默认为当前文件目录
if (!is\_dir($destination\_folder)) { // 判断目录是否存在
mkdirs($destination_folder); // 如果没有就建立目录
}
$newfname = $destination\_folder . basename($url);//$destination\_folder . basename($url); 取得文件的名称
//$newfname = urldecode($newfname); //urldecode()
$file = fopen ($url, "rb"); // 远程下载文件,二进制模式
if ($file) { // 如果下载成功
$newf = fopen ($newfname, "wb"); // 远在文件文件
if ($newf) // 如果文件保存成功
while (!feof($file)) { // 判断附件写入是否完整
fwrite($newf, fread($file, 1024 * 8), 1024 * 8); // 没有写完就继续
}
}
if ($file) {
fclose($file); // 关闭远程文件
}
if ($newf) {
fclose($newf); // 关闭本地文件
}
return true;
}

function mkdirs($path , $mode = "0755") {
if (!is_dir($path)) { // 判断目录是否存在
//mkdirs(dirname($path)); // 循环建立目录
mkdir($path, 0755); // 建立目录
}
return true;
}

//$newfname = basename($_POST\["link"\]); // 取得文件的名称
// 使用示例
mkdirs("file");
//get_file("http://7xn2rd.com1.z0.glb.clouddn.com/9f2f070828381f3019b29137a8014c086f06f081.jpg");

$handle = @fopen("./url.txt", "r");
$arr = array();
if ($handle) {
while (!feof($handle)) {
$item = fgets($handle, 4096);
$arr\[\] = $item;
}
fclose($handle);
header("Content-type:text/html;charset=utf-8");
//echo"<pre>";
//print_r($arr);
//echo"</pre>";
} else {
//echo "文件错误!";
}

for ($x=0; $x<=2216; $x++) {
echo "下载:$x <br>";
get_file(trim($arr\[$x\]));
}
?>
0%