bunnycdn / storage
PHP 库,用于与 BunnyCDN 存储API交互。
3.4.0
2024-07-29 08:21 UTC
Requires
- php: ^7.4||^8.0
- guzzlehttp/guzzle: ^7.8
- psr/http-message: ^2.0
- symfony/polyfill-php80: ^1.29
README
官方PHP库,用于与BunnyCDN存储API交互。
安装
composer require bunnycdn/storage
用法
使用认证详情创建 \Bunny\Storage\Client
的实例
$client = new \Bunny\Storage\Client('access-key', 'storage-zone', \Bunny\Storage\Region::SINGAPORE);
BunnyCDNStorage构造函数接受以下参数
- apiAccessKey - API访问密钥(密码)
- storageZoneName - 您的存储区域名称
- storageZoneRegion - 存储区域区域代码 代码 (de, ny, 或 sg)
导航
上传对象
$client->upload('/path/to/local/file.txt', 'remote/path/hello-world.txt');
可以使用 $withChecksum
参数禁用校验和
$client->upload('/path/to/local/file.txt', 'remote/path/hello-world.txt', false);
注意
支持异步上传,使用 $client->uploadAsync()
。它将返回一个 GuzzleHttp\Promise\PromiseInterface
。
下载对象
$client->download('remote/path/hello-world.txt', '/path/to/local/file.txt');
列出对象
$items = $client->listFiles('remote/path/');
返回FileInfo对象的数组。
获取对象的详细信息
$item = $client->info('remote/path/hello-world.txt');
返回FileInfo的实例。
删除对象
$client->delete('remote/path/hello-world.txt');
删除多个对象
$errors = $client->deleteMultiple(['file1.txt', 'file2.txt', 'non-existing.txt']); var_dump($errors); /* array(1) { 'non-existing.txt' => string(16) "Object not found" } */
上传文件内容
$content = 'Hello, world!'; $client->putContents('hello-world.txt', $content);
可以使用 $withChecksum
参数禁用校验和
$content = 'Hello, world!'; $client->putContents('hello-world.txt', $content, false);
获取文件内容
$content = $client->getContents('hello-world.txt'); echo $content; // Hello, world!