anerg2046 / laravel-filesystem-cos
A Cos storage filesystem for Laravel.
dev-master
2021-01-01 16:32 UTC
Requires
- php: ^7.1
- guzzlehttp/guzzle: ^6.3|^7.0
- league/flysystem: ^1.0
- qcloud/cos-sdk-v5: ^2.0
This package is auto-updated.
Last update: 2024-10-29 06:00:13 UTC
README
Tencent Cloud COS storage for Laravel
Requirement
- PHP >= 7.1
Installation
$ composer require "anerg2046/laravel-filesystem-cos" -vvv
Configuration
- Add a new disk to your
config/filesystems.php
config:
<?php return [ 'disks' => [ //... 'cos' => [ 'driver' => 'cos', 'region' => env('COS_REGION', 'ap-guangzhou'), 'credentials' => [ 'appId' => env('COS_APP_ID'), 'secretId' => env('COS_SECRET_ID'), 'secretKey' => env('COS_SECRET_KEY'), ], 'timeout' => env('COS_TIMEOUT', 60), 'connect_timeout' => env('COS_CONNECT_TIMEOUT', 60), 'bucket' => env('COS_BUCKET'), 'cdn' => env('COS_CDN'), 'scheme' => env('COS_SCHEME', 'https'), 'read_from_cdn' => env('COS_READ_FROM_CDN', false), ], //... ] ];
Usage
$disk = Storage::disk('cos'); // create a file $disk->put('avatars/filename.jpg', $fileContents); // check if a file exists $exists = $disk->has('file.jpg'); // get timestamp $time = $disk->lastModified('file1.jpg'); $time = $disk->getTimestamp('file1.jpg'); // copy a file $disk->copy('old/file1.jpg', 'new/file1.jpg'); // move a file $disk->move('old/file1.jpg', 'new/file1.jpg'); // get file contents $contents = $disk->read('folder/my_file.txt'); // fetch url content $file = $disk->fetch('folder/save_as.txt', $fromUrl); // get file url $url = $disk->getUrl('folder/my_file.txt');
License
MIT