朋友給我一個網路相簿,要我看看裡面的東西,但是單張單張點好慢,乾脆下載下來再從檔案總管看好了。

本來要用像 FlashGet 之類的批次下載的工具,不過檔案有 XML 格式的檔案清單、但檔名不規律,就自己寫程式抓。

 

<?php

ini_set("max_execution_time", 6000); // 防止檔案量過多而逾時

$string = file_get_contents("http://127.0.0.1/folderdata.xml");// 取回網路相簿檔案列表
$xml = simplexml_load_string($string);// 以 Simple XML Load String 把內容為 XML 的字串轉為 Simple XML 物件
$count = sizeof($xml->file);// 照片的節點個數

// 以迴圈把每一張照片跑一遍
for ($i = 0; $i < $count; $i++) {
    $filename = (string)$xml->file[$i]->attributes()->name;
    $url = 'http://127.0.0.1/images/'.$filename;
    $fp_input = fopen($url, 'r');
    file_put_contents($filename, $fp_input);// 用file_put_contents存檔存起來
}
?>

 

 

檔案下載的原則就是把檔案一個個找出來、串路徑、存起來,所以只要知道檔案名稱,打開這一頁讓他慢慢跑就好了。

打完收工~

 

 

 

arrow
arrow
    文章標籤
    php
    全站熱搜

    小攻城師 發表在 痞客邦 留言(0) 人氣()