全部产品
弹性计算 会员服务 网络 安全 移动云 数加·大数据分析及展现 数加·大数据应用 管理与监控 云通信 阿里云办公 培训与认证 智能硬件
存储与CDN 数据库 域名与网站(万网) 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网 更多
对象存储 OSS

快速入门

更新时间:2018-05-30 23:59:00

请确认您已经熟悉OSS的基本概念,如存储空间(Bucket)、文件/对象(Object)、访问域名(Endpoint)、访问密钥(AccessKey,包括AccessKeyId和AccessKeySecret)等。

本节介绍如何快速使用OSS PHP SDK完成常见操作,如创建存储空间、上传文件、下载文件等。

常用类

含义
OSS\OssClient OSS客户端类
OSS\Core\OssException OSS异常类

创建存储空间

以下代码用于创建存储空间:

  1. <?php
  2. use OSS\OssClient;
  3. use OSS\Core\OssException;
  4. $accessKeyId = "<yourAccessKeyId>";
  5. $accessKeySecret = "<yourAccessKeySecret>";
  6. // Endpoint以杭州为例,其它Region请按实际情况填写。
  7. $endpoint = "http://oss-cn-hangzhou.aliyuncs.com";
  8. //您要创建的Bucket的名称。
  9. $bucket = "<yourBucketName>";
  10. try {
  11. $ossClient = new OssClient($accessKeyId, $accessKeySecret, $endpoint);
  12. $ossClient->createBucket($bucket);
  13. } catch (OssException $e) {
  14. print $e->getMessage();
  15. }

关于存储空间的命名规范,请参见基本概念中存储空间的命名规范。更多关于创建存储空间的信息,请参见管理存储空间

上传文件

以下代码用于上传文件:

  1. <?php
  2. use OSS\OssClient;
  3. use OSS\Core\OssException;
  4. $accessKeyId = "<yourAccessKeyId>";
  5. $accessKeySecret = "<yourAccessKeySecret>";
  6. // Endpoint以杭州为例,其它Region请按实际情况填写。
  7. $endpoint = "http://oss-cn-hangzhou.aliyuncs.com";
  8. //您拥有的Bucket的名称。
  9. $bucket= " <yourBucketName>";
  10. //您要创建的Object的名称。
  11. $object = " <yourObjectName>";
  12. $content = "Hi, OSS.";
  13. try {
  14. $ossClient = new OssClient($accessKeyId, $accessKeySecret, $endpoint);
  15. $ossClient->putObject($bucket, $object, $content);
  16. } catch (OssException $e) {
  17. print $e->getMessage();
  18. }

关于文件的命名规范,请参见基本概念中对象的命名规范。更多上传方式,请参见上传文件

下载文件

以下代码用于下载文件:

  1. <?php
  2. use OSS\OssClient;
  3. use OSS\Core\OssException;
  4. $accessKeyId = "<yourAccessKeyId>";
  5. $accessKeySecret = "<yourAccessKeySecret>";
  6. // Endpoint以杭州为例,其它Region请按实际情况填写。
  7. $endpoint = "http://oss-cn-hangzhou.aliyuncs.com";
  8. //您拥有的Bucket名称。
  9. $bucket= "<yourBucketName>";
  10. //您拥有的Object名称。
  11. $object = "<yourObjectName>";
  12. try {
  13. $ossClient = new OssClient($accessKeyId, $accessKeySecret, $endpoint);
  14. $content = $ossClient->getObject($bucket, $object);
  15. print("object content: " . $content);
  16. } catch (OssException $e) {
  17. print $e->getMessage();
  18. }

更多下载方式,请参见下载文件

列举文件

完成上传文件操作后,您可能需要查看存储空间下包含了哪些文件。以下代码用于列举文件:

  1. <?php
  2. use OSS\OssClient;
  3. use OSS\Core\OssException;
  4. $accessKeyId = "<yourAccessKeyId>";
  5. $accessKeySecret = "<yourAccessKeySecret>";
  6. // Endpoint以杭州为例,其它Region请按实际情况填写。
  7. $endpoint = "http://oss-cn-hangzhou.aliyuncs.com";
  8. //您拥有的Bucket名称。
  9. $bucket= "<yourBucketName>";
  10. try {
  11. $ossClient = new OssClient($accessKeyId, $accessKeySecret, $endpoint);
  12. $listObjectInfo = $ossClient->listObjects($bucket);
  13. $objectList = $listObjectInfo->getObjectList();
  14. if (!empty($objectList)) {
  15. foreach ($objectList as $objectInfo) {
  16. print($objectInfo->getKey() . "\t" . $objectInfo->getSize() . "\t" . $objectInfo->getLastModified() . "\n");
  17. }
  18. }
  19. } catch (OssException $e) {
  20. print $e->getMessage();
  21. }

以上代码默认列举100个文件。更多关于列举功能的信息,请参见管理文件

删除文件

以下代码用于删除文件:

  1. <?php
  2. use OSS\OssClient;
  3. use OSS\Core\OssException;
  4. $accessKeyId = "<yourAccessKeyId>";
  5. $accessKeySecret = "<yourAccessKeySecret>";
  6. // Endpoint以杭州为例,其它Region请按实际情况填写。
  7. $endpoint = "http://oss-cn-hangzhou.aliyuncs.com";
  8. //您拥有的Bucket的名称。
  9. $bucket= "<yourBucketName>";
  10. //您拥有的Object的名称。
  11. $object = "<yourObjectName>";
  12. try {
  13. $ossClient = new OssClient($accessKeyId, $accessKeySecret, $endpoint);
  14. $ossClient->deleteObject($bucket, $object);
  15. } catch (OssException $e) {
  16. print $e->getMessage();
  17. }
本文导读目录