56 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			PHP
		
	
	
			
		
		
	
	
			56 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			PHP
		
	
	
<?php
 | 
						||
 | 
						||
require dirname( __FILE__ ) . '/../vendor/autoload.php';
 | 
						||
 | 
						||
$secretId = 'COS_SECRETID';
 | 
						||
//'云 API 密钥 SecretId';
 | 
						||
$secretKey = 'COS_SECRETKEY';
 | 
						||
//'云 API 密钥 SecretKey';
 | 
						||
$region = 'ap-beijing';
 | 
						||
//设置一个默认的存储桶地域
 | 
						||
$cosClient = new Qcloud\Cos\Client(
 | 
						||
    array(
 | 
						||
        'region' => $region,
 | 
						||
        'schema' => 'https', //协议头部,默认为http
 | 
						||
        'credentials'=> array(
 | 
						||
            'secretId'  => $secretId ,
 | 
						||
            'secretKey' => $secretKey
 | 
						||
        )
 | 
						||
    )
 | 
						||
);
 | 
						||
$cos_path = 'cos/folder';
 | 
						||
$nextMarker = '';
 | 
						||
$isTruncated = true;
 | 
						||
 | 
						||
while ( $isTruncated ) {
 | 
						||
    try {
 | 
						||
        $result = $cosClient->listObjects(
 | 
						||
            ['Bucket' => 'examplebucket-125000000', //格式:BucketName-APPID
 | 
						||
            'Delimiter' => '',
 | 
						||
            'EncodingType' => 'url',
 | 
						||
            'Marker' => $nextMarker,
 | 
						||
            'Prefix' => $cos_path,
 | 
						||
            'MaxKeys' => 1000]
 | 
						||
        );
 | 
						||
    } catch ( \Exception $e ) {
 | 
						||
        echo( $e );
 | 
						||
    }
 | 
						||
    $isTruncated = $result['IsTruncated'];
 | 
						||
    $nextMarker = $result['NextMarker'];
 | 
						||
    foreach ( $result['Contents'] as $content ) {
 | 
						||
        $cos_file_path = $content['Key'];
 | 
						||
        $local_file_path = $content['Key'];
 | 
						||
        // 按照需求自定义拼接下载路径
 | 
						||
        try {
 | 
						||
            $result = $cosClient->download(
 | 
						||
                $bucket = 'examplebucket-125000000', //格式:BucketName-APPID
 | 
						||
                $key = $cos_file_path,
 | 
						||
                $saveAs = $local_file_path
 | 
						||
            );
 | 
						||
            echo ( $cos_file_path . "\n" );
 | 
						||
        } catch ( \Exception $e ) {
 | 
						||
            echo( $e );
 | 
						||
        }
 | 
						||
    }
 | 
						||
}
 |