:floppy_disk: Flysystem adapter for the Qiniu storage.
# Requirement - PHP >= 5.5.9 # Installation ```shell $ composer require "overtrue/flysystem-qiniu" -vvv ``` # Usage ```php use League\Flysystem\Filesystem; use Overtrue\Flysystem\Qiniu\QiniuAdapter; use Overtrue\Flysystem\Qiniu\Plugins\FetchFile; $accessKey = 'xxxxxx'; $secretKey = 'xxxxxx'; $bucket = 'test-bucket-name'; $domain = 'xxxx.bkt.clouddn.com'; // or with protocol: https://xxxx.bkt.clouddn.com $adapter = new QiniuAdapter($accessKey, $secretKey, $bucket, $domain); $flysystem = new League\Flysystem\Filesystem($adapter); ``` ## API ```php bool $flysystem->write('file.md', 'contents'); bool $flysystem->write('file.md', 'http://httpbin.org/robots.txt', ['mime' => 'application/redirect302']); bool $flysystem->writeStream('file.md', fopen('path/to/your/local/file.jpg', 'r')); bool $flysystem->update('file.md', 'new contents'); bool $flysystem->updateStream('file.md', fopen('path/to/your/local/file.jpg', 'r')); bool $flysystem->rename('foo.md', 'bar.md'); bool $flysystem->copy('foo.md', 'foo2.md'); bool $flysystem->delete('file.md'); bool $flysystem->has('file.md'); string|false $flysystem->read('file.md'); array $flysystem->listContents(); array $flysystem->getMetadata('file.md'); int $flysystem->getSize('file.md'); string $flysystem->getAdapter()->getUrl('file.md'); string $flysystem->getMimetype('file.md'); int $flysystem->getTimestamp('file.md'); ``` ### Plugins File Url: ```php use Overtrue\Flysystem\Qiniu\Plugins\FileUrl; $flysystem->addPlugin(new FileUrl()); string $flysystem->getUrl('file.md'); ``` Fetch file: ```php use Overtrue\Flysystem\Qiniu\Plugins\FetchFile; $flysystem->addPlugin(new FetchFile()); bool $flysystem->fetch('file.md', 'http://httpbin.org/robots.txt'); ``` Upload Token: ```php use Overtrue\Flysystem\Qiniu\Plugins\UploadToken; $flysystem->addPlugin(new UploadToken()); string $flysystem->getUploadToken('file.md', 3600); ``` File private download Url: ```php use Overtrue\Flysystem\Qiniu\Plugins\PrivateDownloadUrl; $flysystem->addPlugin(new PrivateDownloadUrl()); string $flysystem->privateDownloadUrl('file.md'); ``` # Integration - Laravel 5: [overtrue/laravel-filesystem-qiniu](https://github.com/overtrue/laravel-filesystem-qiniu) - Yii2: [krissss/yii2-filesystem-qiniu](https://github.com/krissss/yii2-filesystem-qiniu) ## PHP 扩展包开发 > 想知道如何从零开始构建 PHP 扩展包? > > 请关注我的实战课程,我会在此课程中分享一些扩展开发经验 —— [《PHP 扩展包实战教程 - 从入门到发布》](https://learnku.com/courses/creating-package) # License MIT