drcayman / oss-sdk-php
PHP 阿里云 OSS SDK
Requires
- php: >=5.3
Requires (Dev)
- dev-master
- v2.4.3
- v2.4.2
- v2.4.1
- v2.4.0
- v2.3.1
- v2.3.0
- v2.2.4
- v2.2.3
- v2.2.2
- v2.2.1
- v2.2.0
- v2.1.0
- v2.0.7
- v2.0.6
- v2.0.5
- v2.0.4
- v2.0.3
- v2.0.2
- v2.0.1
- v2.0.0
- dev-dev-2110
- dev-dev-2111
- dev-dev-2112
- dev-dev-2108
- dev-dev-2107
- dev-dev-2106
- dev-dev-2009
- dev-dev-2008
- dev-dev-coverage
- dev-dev-1910
- dev-concurrent
- dev-sts
- dev-test-jenkins
- dev-global
- dev-restore
- dev-symlink
- dev-dev-head-bucket
- dev-support_proxy
- dev-support_emptybody_
- dev-_emptybody
- dev-support_emptybody
- dev-php7_1_2
- dev-supportrt_emptybody_
- dev-refine-readme
- dev-swoole_support
- dev-crc64
- dev-live-channel
- dev-optimizer
This package is auto-updated.
Last update: 2024-09-06 14:24:49 UTC
README
中文README
概述
阿里云对象存储服务(OSS)是阿里云提供的一种云存储服务,具有大规模容量、安全性、低成本和高可靠性。您可以通过调用API在任何时间、任何地点上传和下载数据,并通过网页控制台对数据进行简单管理。OSS可以存储任何类型的文件,因此适用于各种网站、开发企业和开发者。
运行环境
- PHP 5.3+
- cURL 扩展
提示
- 在 Ubuntu 上,您可以使用 apt-get 软件包管理器安装 PHP cURL 扩展:
sudo apt-get install php5-curl。
安装 OSS PHP SDK
-
如果您使用 composer 来管理项目依赖项,请在项目的根目录下运行以下命令
composer require aliyuncs/oss-sdk-php您也可以在
composer.json文件中声明对阿里云 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';
快速使用
常见类
初始化 OssClient
SDK 对 OSS 的操作通过 OssClient 类执行。以下代码创建了一个 OssClient 对象
<?php $accessKeyId = "<AccessKeyID that you obtain from OSS>"; $accessKeySecret = "<AccessKeySecret that you obtain from OSS>"; $endpoint = "<Domain that you select to access an OSS data center, such as "oss-cn-hangzhou.aliyuncs.com>"; try { $ossClient = new OssClient($accessKeyId, $accessKeySecret, $endpoint); } catch (OssException $e) { print $e->getMessage(); }
对象操作
对象是 OSS 上最基本的数据单元。您可以简单地将对象视为文件。以下代码上传了一个对象
<?php $bucket= "<Name of the bucket in use. Pay attention to naming conventions>"; $object = "<Name of the object in use. Pay attention to naming conventions>"; $content = "Hello, OSS!"; // Content of the uploaded file try { $ossClient->putObject($bucket, $object, $content); } catch (OssException $e) { print $e->getMessage(); }
桶操作
桶是您用于管理存储对象的存储空间。它是用户对象管理的单元。每个对象必须属于一个桶。以下代码创建了一个桶
<?php $bucket= "<Name of the bucket in use. Pay attention to naming conventions>"; try { $ossClient->createBucket($bucket); } catch (OssException $e) { print $e->getMessage(); }
处理返回结果
OssClient 通过接口提供以下两种类型的返回数据
-
PUT 和 DELETE 接口:如果接口返回 null 而无 OSSException,则认为 PUT 和 DELETE 操作成功。
-
GET 和 LIST 接口:如果接口返回所需数据而无 OSSException,则认为 GET 和 LIST 操作成功。例如,
<?php $bucketListInfo = $ossClient->listBuckets(); $bucketList = $bucketListInfo->getBucketList(); foreach($bucketList as $bucket) { print($bucket->getLocation() . "\t" . $bucket->getName() . "\t" . $bucket->getCreateDate() . "\n"); }
在上面的代码中,$bucketListInfo 是 'OSS\Model\BucketListInfo' 数据类型。
运行示例项目
- 修改
samples/Config.php以完成配置信息。 - 运行
cd samples/ && php RunAll.php。
运行单元测试
-
运行
composer install下载依赖库。 -
设置环境变量。
export OSS_ACCESS_KEY_ID=access-key-id export OSS_ACCESS_KEY_SECRET=access-key-secret export OSS_ENDPOINT=endpoint export OSS_BUCKET=bucket-name -
运行
php vendor/bin/phpunit
许可协议
- MIT
联系我们
- 阿里云 OSS 官方网站.
- 阿里云 OSS 官方论坛.
- 阿里云 OSS 官方文档中心.
- 阿里云官方技术支持: 提交工单。