function recursiveGetStorage($bucketName, $path, $context = null) { global $storage, $fileNum, $dirNum; $listRet = Cosapi::listFolder($bucketName, $path, 199, null, null, $context); //var_dump($listRet); while ($listRet && $listRet['code'] === 0 && $listRet['data']['infos']) { foreach ($listRet['data']['infos'] as $item) { if (isset($item['filelen'])) { $fileNum++; $storage += $item['filesize']; if ($item['filelen'] != $item['filesize']) { echo "{$path}" . $item['name'] . " filesize:" . $item['filesize'] . " filelen:" . $item['filelen'] . "\n"; } } else { $dirNum++; recursiveGetStorage($bucketName, $path . $item['name'] . '/'); } } $context = $listRet['data']['context']; $listRet = Cosapi::listFolder($bucketName, $path, 10, null, null, $context); //var_dump($listRet); } if ($listRet['code'] !== 0) { echo "{$path} has error, code:" . $listRet['code'] . "\n"; } return; }
<?php // include Config File & QCLOUD COS SDk require './config.inc.php'; use Qcloud_cos\Auth; use Qcloud_cos\Cosapi; //include Slim2 require 'Slim/Slim.php'; \Slim\Slim::registerAutoloader(); $app = new \Slim\Slim(); $app->get('/', function () { echo "Hello World!"; }); $app->get('/:dir', function ($dir) { $dir = str_replace('-', '/', $dir); $listRet = Cosapi::listFolder(BUCKET, $dir); $listRet = $listRet['data']; $listRet = json_encode($listRet); echo $listRet; }); $app->run();
$dstFolder = '/sdk/'; Cosapi::setTimeout(180); //创建文件夹 $createFolderRet = Cosapi::createFolder($bucketName, $dstFolder); var_dump($createFolderRet); //上传文件 $bizAttr = ""; $insertOnly = 0; $sliceSize = 3 * 1024 * 1024; $uploadRet = Cosapi::upload($bucketName, $srcPath, $dstPath, $bizAttr, $sliceSize, $insertOnly); var_dump($uploadRet); //目录列表 $listnum = 20; $pattern = "eListBoth"; $order = 0; $listRet = Cosapi::listFolder($bucketName, $dstFolder, $listnum, $pattern, $order); var_dump($listRet); //更新目录信息 $bizAttr = ""; $updateRet = Cosapi::updateFolder($bucketName, $dstFolder, $bizAttr); var_dump($updateRet); //更新文件信息 $bizAttr = ""; $authority = "eWPrivateRPublic"; $customer_headers_array = array('Cache-Control' => "no", 'Content-Type' => "application/pdf", 'Content-Language' => "ch"); $updateRet = Cosapi::update($bucketName, $dstPath, $bizAttr, $authority, $customer_headers_array); var_dump($updateRet); //查询目录信息 $statRet = Cosapi::statFolder($bucketName, $dstFolder); var_dump($statRet); //查询文件信息
//var_dump($uploadRet); //分片上传 //$sliceUploadRet = Cosapi::upload_slice( // $srcPath, $bucketName, $dstPath); //用户指定分片大小来分片上传 //$sliceUploadRet = Cosapi::upload_slice( // $srcPath, $bucketName, $dstPath, null, 3*1024*1024); //指定了session,可以实现断点续传 //$sliceUploadRet = Cosapi::upload_slice( // $srcPath, $bucketName, $dstPath, null, 2000000, '48d44422-3188-4c6c-b122-6f780742f125+CpzDLtEHAA=='); //var_dump($sliceUploadRet); //创建目录 //$createFolderRet = Cosapi::createFolder($bucketName, "/test/"); //var_dump($createFolderRet); //listFolder $listRet = Cosapi::listFolder($bucketName, "/"); var_dump($listRet); //prefixSearch //$ret = Cosapi::prefixSearch($bucketName, "/test"); //var_dump($ret); //updateFolder //$updateRet = Cosapi::updateFolder($bucketName, '/test/', '{json:0}'); //var_dump($updateRet); //update //$updateRet = Cosapi::update($bucketName, $dstPath, '{json:1}'); //var_dump($updateRet); //statFolder //$statRet = Cosapi::statFolder($bucketName, "/test/"); //var_dump($statRet); //stat //$statRet = Cosapi::stat($bucketName, $dstPath);