Aliyun OSS SDK for PHP
概述
阿里云对象存储(Object Storage Service,简称OSS),是阿里云对外提供的海量、安全、低成本、高可靠的云存储服务。用户可以通过调用API,在任何应用、任何时间、任何地点上传和下载数据,也可以通过用户Web控制台对数据进行简单的管理。OSS适合存放任意文件类型,适合各种网站、开发企业及开发者使用。
运行环境
PHP 5.3+ cURL extension提示:
Ubuntu下可以使用apt-get包管理器安装php的cURL扩展sudo apt-get install php5-curl
安装方法
如果您通过composer管理您的项目依赖,可以在你的项目根目录运行:
$ composer require aliyuncs/oss-sdk-php
或者在你的composer.json
中声明对Aliyun OSS SDK for PHP的依赖:
"require": {
"aliyuncs/oss-sdk-php": "~2.0"
}
然后通过composer install
安装依赖。composer安装完成后,在您的PHP代码中引入依赖即可:
require_once __DIR__ . '/vendor/autoload.php';
您也可以直接下载已经打包好的phar文件,然后在你 的代码中引入这个文件即可:
require_once '/path/to/oss-sdk-php.phar';
下载SDK源码,在您的代码中引入SDK目录下的autoload.php
文件:
require_once '/path/to/oss-sdk/autoload.php';
快速使用
常用类
类名 | 解释 |
---|---|
OSSOssClient | OSS客户端类,用户通过OssClient的实例调用接口 |
OSSCoreOssException | OSS异常类,用户在使用的过程中,只需要注意这个异常 |
OssClient初始化
SDK的OSS操作通过OssClient类完成的,下面代码创建一个OssClient对象:
<?php $accessKeyId = "<您从OSS获得的AccessKeyId>"; ; $accessKeySecret = "<您从OSS获得的AccessKeySecret>"; $endpoint = "<您选定的OSS数据中心访问域名,例如oss-cn-hangzhou.aliyuncs.com>"; try { $ossClient = new OssClient($accessKeyId, $accessKeySecret, $endpoint); } catch (OssException $e) { print $e->getMessage(); }
文件操作
文件(又称对象,Object)是OSS中最基本的数据单元,您可以把它简单地理解为文件,用下面代码可以实现一个Object的上传:
<?php $bucket = "<您使用的Bucket名字,注意命名规范>"; $object = "<您使用的Object名字,注意命名规范>"; $content = "Hello, OSS!"; // 上传的文件内容 try { $ossClient->putObject($bucket, $object, $content); } catch (OssException $e) { print $e->getMessage(); }
存储空间操作
存储空间(又称Bucket)是一个用户用来管理所存储Object的存储空间,对于用户来说是一个管理Object的单元,所有的Object都必须隶属于某个Bucket。您可以按照下面的代码新建一个Bucket:
<?php $bucket = "<您使用的Bucket名字,注意命名规范>"; try { $ossClient->createBucket($bucket); } catch (OssException $e) { print $e->getMessage(); }
返回结果处理
OssClient提供的接口返回返回数据分为两种:
Put,Delete类接口,接口返回null,如果没有OssException,即可认为操作成功 Get,List类接口,接口返回对应的数据,如果没有OssException,即可认为操作成功,举个例子:<?php $bucketListInfo = $ossClient->listBuckets(); $bucketList = $bucketListInfo->getBucketList(); foreach($bucketList as $bucket) { print($bucket->getLocation() . "t" . $bucket->getName() . "t" . $bucket->getCreatedate() . "n"); }
上面代码中的$bucketListInfo的数据类型是 OSSModelBucketListInfo
运行Sample程序
修改samples/Config.php
, 补充配置信息
执行 cd samples/ && php RunAll.php
运行单元测试
修改tests/OSS/Tests/Config.php
, 补充配置信息
执行 ./vendor/bin/phpunit tests/OSS/Tests/
生成API文档
到根目录下,执行composer install
, 下载依赖的库
执行mkdir phpdoc && vendor/bin/phpdoc -d src -t phpdoc
,生成html格式的api文档在phpdoc目录中
注意,需要php的版本是5.3,5.4,新版本的php不能正常使用phpdoc工具
联系我们
阿里云OSS官方网站 阿里云OSS官方论坛 阿里云OSS官方文档中心 阿里云官方技术支持:提交工单
版权声明:
1、该文章(资料)来源于互联网公开信息,我方只是对该内容做点评,所分享的下载地址为原作者公开地址。2、网站不提供资料下载,如需下载请到原作者页面进行下载。
3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考学习用!
4、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。