欢迎您来到腾讯云!积分商城

腾讯云腾讯云论坛

 找回密码
 立即注册
忘了密码?

扫一扫,访问微社区

快捷导航
搜索
查看: 322|回复: 0

[经验分享] cos 兼容 aws-php-sdk 使用指南

[复制链接]

8

主题

0

好友

370

积分

程序猿[LV2]

Rank: 2Rank: 2

云币
950
威望
370
发表于 2017-11-16 16:54:16 |显示全部楼层 |未分类
1. SDK 名称版本:aws-php-sdk-v2
由于最新版本的 cos 已经完全兼容 s3,那么用 aws 的 sdk 来使用 cos 的服务也变成了一件可行的事情,这里我来分享一下如何通过 aws-php-sdk 来使用 cos 的服务。

2.使用教程
2.1.获取 aws-php-sdk-v2
下载并安装 aws-php-sdk-v2。
具体步骤详见官网文档:
http://docs.aws.amazon.com/aws-sdk-php/v2/guide/quick-start.html

使用 composer 安装即可
{
    "require": {
        "aws/aws-sdk-php": "2.*"
    }
}

2.2.使用示例
配置
新建一个 config.php 的文件,内容如下:
<?phprequire '/path/to/vendor/autoload.php';use Aws\S3\S3Signature;return array(
    'includes' => array('_aws'),
    'services' => array(
        'default_settings' => array(
            'params' => array(
                'key'    => 'your access id',
                'secret' => 'your access key',
                'region' => 'cn-north',
                'endpoint'=>'http://cn-north.myqcloud.com/',
                'host' => 'cn-north.myqcloud.com',
                'signature' =>  new S3Signature(),
            )
        )
    )
);

2.3. 常见功能使用(上传、下载、删除...)

<?php#填写 vendor 的路径require '/path/to/vendor/autoload.php';use Aws\Common\Aws\S3Client;use Aws\S3\Exception\S3Exception;use Aws\Common\Aws;
#调用配置文件
$aws = Aws::factory('config.php');
$s3Client = $aws->get('s3');
#创建 bucket/*
Bucket 为"<bucket>-<appid>"
*/
$result = $s3Client->createBucket(array('Bucket'  =>  'lewzylu1120-1252448703'));
#删除 bucket/*
Bucket 为"<bucket>-<appid>"
*/
$result = $s3Client->deleteBucket(array('Bucket'  =>  'lewzylu1120-1252448703'));
#get bucket/*
Bucket 为"<bucket>-<appid>"
*/
$result = $s3Client->getBucket(array('Bucket'  =>  'lewzylu1120-1252448703'));
#上传文件/*
Bucket 为"<bucket>-<appid>"
Key 为文件名
Body 为文件内容
*/
$result = $s3Client->putObject(array('Bucket'  =>  'lewzylu1120-1252448703','Key' => '11.txt','Body'=> '123213123'
));
#分块上传
$file = file_get_contents(object_path);
$s3Client->upload(
    $bucket = 'lewzylu05-1252448703',
    $key="999.txt",
    $body=$file
);
#下载文件/*
Bucket 为"<bucket>-<appid>"
Key 为文件名
*/
$result = $s3Client->getObject(array('Bucket'  =>  'lewzylu1120-1252448703','Key' => '11.txt',
));
/*
更多操作详见s3官方文档
*/


您需要登录后才可以回帖 登录 | 立即注册
您需要登录后才可以发帖 QQ登录

联系我们|腾讯云平台|积分商城|腾讯云官方论坛    

GMT+8, 2018-5-21 20:58 , Processed in 1.171049 second(s), 29 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部