您现在的位置: 万盛学电脑网 >> 程序编程 >> 网络编程 >> php编程 >> 正文

php实现批量下载百度云盘文件例子分享

作者:佚名    责任编辑:admin    更新时间:2022-06-22

 本文使用百度开放云的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%9 4%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); }