wearesho-team / yii2-filesystem
league/flysystem的Yii2集成
4.3.3
2022-11-14 15:42 UTC
Requires
- php: >=7.4
- horat1us/yii2-environment-config: ^1.1
- league/flysystem: ^1.1.4
- league/flysystem-aws-s3-v3: ^1.0
- yiisoft/yii2: ^2.0.40
Requires (Dev)
- horat1us/yii2-asset-free: ^1.0
- mockery/mockery: ^1.5
- phpunit/phpunit: ^9.5
- squizlabs/php_codesniffer: ^3.7
README
league/flysystem的集成league/flysystem用于Yii2。
默认情况下,它通过环境变量进行配置。开箱即用的可用集成
配置
默认情况下,使用环境变量进行配置。要选择要使用的集成,您需要配置FILESYSTEM_ADAPTER变量。可用值:local、ftp、s3。(或另一个,如果您使用自定义引导配置)
S3适配器配置
本地适配器配置
FTP适配器配置
副本适配器配置
此适配器的目的是在少数适配器(任何AdapterInterface实现)上镜像文件
<?php use Wearesho\Yii\Filesystem; $adapter = new Filesystem\Replica\Adapter([ 'master' => [ 'class' => Filesystem\S3\Adapter::class, ], 'slaves' => [ // so much slaves [ 'class' => Filesystem\Ftp\Adapter::class, ], ], ]);
使用方法
引导
要开始使用此包,您需要将Bootstrap添加到您的Yii2应用程序中。
<?php // common/config/main.php or another configuration file use Wearesho\Yii\Filesystem; return [ 'components' => [ // ... ], 'bootstrap' => [ 'class' => Filesystem\Bootstrap::class, 'container' => true, // if you need to configure global DI container (\Yii::$container) 'id' => 'fs', // \Yii::$app component to be configured. Filesystem will be available using \Yii::$app->fs ], ];
注意:对于高级使用,您可能需要自定义Bootstrap适配器和配置属性
文件系统类
您还可以使用Filesystem类进行yii2方式的配置
<?php use Wearesho\Yii\Filesystem\Filesystem; use Wearesho\Yii\Filesystem\AdapterInterface; $fs = new Filesystem([ 'adapter' => [ 'class' => AdapterInterface::class, // or another implementation, if container not configured ], ]);
待办事项
- 测试