本文使用百度開放雲的PHP SDK實現批量下載百度雲端硬碟的檔案,需要的朋友可以參考下。
百度開放雲PhpSDK下載地址:http://developer.baidu.com/wiki/index.php?title=%E5%B8%AE%E5%8A%A9%E6%96%87%E6%A1%A3%E9%A6%96%E9%A1%B5/web%E5%BA%94%E7%94%A8%E6%8E%A5%E5%85%A5/SDK 執行個體代碼: 代碼如下:<?php/** * Author: hankcs * Date : 14-3-29 * Time : 下午10:29 */ini_set("max_execution_time", 36000);require_once '../bcs.class.php';require_once '../krumo/class.krumo.php';$host = 'bcs.duapp.com';$ak = '你的公開金鑰';$sk = '你的私密金鑰';$bucket = '要下載的bucket名稱';$baidu_bcs = new BaiduBCS ( $ak, $sk, $host ); $response = json_decode($baidu_bcs->list_object ( $bucket, array('start' => 0,'limit' => 1024,) )->body);$downloaded_size = 0;while($downloaded_size < $response->object_total){ krumo($response); // 下載它們 foreach($response->object_list as $object) { if(!$object->is_dir) { mk_dir('.'.$object->parent_dir); $result = $baidu_bcs->get_object ( $bucket, $object->object, array ("fileWriteTo" => '.'.$object->object ) ); } } $downloaded_size += count($response->object_list); $response = json_decode($baidu_bcs->list_object ( $bucket, array('start' => $downloaded_size,'limit' => 1024,) )->body);} function mk_dir($dir, $mode = 0755){ if (is_dir($dir) || @mkdir($dir,$mode)) return true; if (!mk_dir(dirname($dir),$mode)) return false; return @mkdir($dir,$mode);}