cnerstudio / think-filesystem
thinkphp6.1 for filesystem,include Aliyun and Qiniu COS OBS
v3.1.18
2024-06-17 03:19 UTC
Requires
- php: >=8.0.0
- league/flysystem: ^3.0
- league/flysystem-aws-s3-v3: ^3.0
- league/flysystem-ftp: ^3.0
- league/flysystem-google-cloud-storage: ^3.0
- league/flysystem-path-prefixing: ^3.3
- league/flysystem-read-only: ^3.3
- league/flysystem-sftp-v3: ^3.0
- overtrue/flysystem-cos: ^5.0.0
- overtrue/flysystem-qiniu: ^3.0
- topthink/framework: >=6.0
- voku/portable-ascii: ^1.6.1
- yzh52521/flysystem-obs: ^3.0
- yzh52521/flysystem-oss: ^3.0
Requires (Dev)
- symfony/http-foundation: ^6.0
- v3.x-dev
- v3.1.18
- v3.0.18
- v3.0.17
- v3.0.16
- v3.0.15
- v3.0.14
- v3.0.13
- v3.0.12
- v3.0.11
- v3.0.10
- v3.0.9
- v3.0.8
- v3.0.7
- v3.0.6
- v3.0.5
- v3.0.4
- v3.0.3
- v3.0.2
- v3.0.1
- v3.0.0
- v2.0.12
- v2.0.11
- v2.0.10
- v2.0.9
- v2.0.8
- v2.0.7
- v2.0.6
- v2.0.5
- v2.0.4
- v2.0.3
- v2.0.2
- v2.0.1
- v2.0.0
- v1.x-dev
- v1.1.3
- v1.0.4
- v1.0.3
- v1.0.2
- v1.0.1
- v1.0.0
This package is auto-updated.
Last update: 2024-10-28 06:04:21 UTC
README
thinkphp6.1 的文件系统扩展包,支持上传阿里云OSS和七牛和腾讯云COS和华为云OBS和awsS3
包含
- php >= 7.1
- thinkphp >=6.1.0
支持
- 阿里云
- 七牛云
- 腾讯云
- 华为云
- AwsS3
- sfpt
安装
第一步:
$ composer require cnerstudio/think-filesystem
第二步: 在config/filesystem.php中添加配置
'aliyun' => [
'type' => 'aliyun',
'accessId' => '******',
'accessSecret' => '******',
'bucket' => 'bucket',
'endpoint' => 'oss-cn-hongkong.aliyuncs.com',
'url' => 'http://oss-cn-hongkong.aliyuncs.com',
],
'qiniu' => [
'type' => 'qiniu',
'accessKey' => '******',
'secretKey' => '******',
'bucket' => 'bucket',
'domain' => '',
],
'qcloud' => [
'type' => 'qcloud',
'region' => '***', //bucket 所属区域 英文
'appId' => '***', // 域名中数字部分
'secretId' => '***',
'secretKey' => '***',
'bucket' => '***',
'timeout' => 60,
'connect_timeout' => 60,
'cdn' => '您的 CDN 域名',
'scheme' => 'https',
'read_from_cdn' => false,
]
'obs'=>[
'key' => 'OBS_ACCESS_ID',
'secret' => 'OBS_ACCESS_KEY', //Huawei OBS AccessKeySecret
'bucket' => 'OBS_BUCKET', //OBS bucket name
'endpoint' => 'OBS_ENDPOINT',
'cdn_domain' => 'OBS_CDN_DOMAIN',
'ssl_verify' => 'OBS_SSL_VERIFY',
'debug' => 'APP_DEBUG',
],
's3'=>[
'credentials' => [
'key' => 'S3_KEY',
'secret' => 'S3_SECRET',
],
'region' => 'S3_REGION',
'version' => 'latest',
'bucket_endpoint' => false,
'use_path_style_endpoint' => false,
'endpoint' => 'S3_ENDPOINT',
'bucket_name' => 'S3_BUCKET',
],
'sftp'=>[
'host' => 'example.com',
'username' => 'username',
'password' => 'password',
// Settings for SSH key based authentication...
'privateKey' => 'path/to/or/contents/of/privatekey',
'passphrase' => 'passphrase-for-privateKey',
// Optional SFTP Settings...
'port' => 22,
'root' => '/path/to/root',
'timeout' => 10,
]
第三步: 开始使用。 请参考thinkphp文档 文档地址:https://www.kancloud.cn/manual/thinkphp6_0/1037639
demo
$file = $this->request->file( 'image' ); try { validate( ['image' => [ // 限制文件大小(单位b),这里限制为4M 'fileSize' => 10 * 1024 * 1000, // 限制文件后缀,多个后缀以英文逗号分割 'fileExt' => 'gif,jpg,png,jpeg' ] ])->check( ['image' => $file] ); $path = \yzh52521\filesystem\facade\Filesystem::disk( 'public' )->putFile( 'test',$file); $url = \yzh52521\filesystem\facade\Filesystem::disk( 'public' )->url( $path ); return json( ['path' => $path,'url' => $url] ); } catch ( \think\exception\ValidateException $e ) { echo $e->getMessage(); }
授权
MIT
感谢
- thinkphp
- overtrue/flysystem-qiniu
- league/flysystem
- overtrue/flysystem-cos