<?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 ); |
} |