short-edition / knp-gaufrette-bundle
此软件包已被 放弃 并不再维护。没有建议的替代软件包。
允许在 Symfony 项目中轻松使用 Gaufrette 库
v0.7.1
2019-12-26 15:32 UTC
Requires
- php: >=7.1
- knplabs/gaufrette: ^0.8.2|^0.9
- symfony/config: ^3.4|^4.2|^5.0
- symfony/dependency-injection: ^3.4|^4.2|^5.0
- symfony/framework-bundle: ^3.4|^4.2|^5.0
Requires (Dev)
- phpunit/phpunit: ~7.5
- symfony/console: ^3.4|^4.0|^5.0
- symfony/filesystem: ^3.4|^4.0|^5.0
- symfony/yaml: ^3.4|^4.0|^5.0
README
为您的 Symfony 项目提供 Gaufrette 集成。
关于 Gaufrette
Gaufrette 是一个 PHP 库,提供文件系统抽象层。此抽象层允许您开发应用程序,而无需知道所有媒体文件将存储在哪里或如何存储。
有关 Gaufrette 的文档可在 Gaufrette 的官方页面 上找到。
安装
先决条件
由于此软件包是 Gaufrette 库的 Symfony 集成,因此您需要首先在项目中安装 Gaufrette。
请注意,您需要分别安装您想要使用的适配器。您可以在 此处 找到有关这些软件包的更多详细信息,以及在 packagist 上的完整适配器列表 这里。
使用 composer
composer require knplabs/knp-gaufrette-bundle
注册软件包
您必须在内核中注册该软件包
<?php return [ // ... Knp\Bundle\GaufretteBundle\KnpGaufretteBundle::class => ['all' => true], ];
配置
Gaufrette 软件包允许您声明文件系统作为服务,而无需触及著名的 "服务容器"。实际上,您可以通过配置来实现这一点!
Gaufrette 软件包的配置分为两部分:适配器 adapters
和文件系统 filesystems
。
配置适配器
# config/packages/knp_gaufrette.yaml knp_gaufrette: adapters: foo: local: directory: /path/to/my/filesystem
定义的适配器将用于创建文件系统。
您可以使用以下适配器之一
- 本地适配器
- 安全本地适配器
- 服务
- 内存中
- Azure Blob 存储
- GridFS
- MogileFS
- Ftp
- Sftp
- Phpseclib Sftp
- Apc
- AsyncAws S3
- AWS S3
- Open Cloud
- GoogleCloudStorage
- 缓存
- Stream Wrapper
- Doctrine DBAL
- Dropbox
配置文件系统
# config/packages/knp_gaufrette.yaml knp_gaufrette: adapters: # ... filesystems: bar: adapter: foo alias: foo_filesystem
每个定义的文件系统都必须有一个 adapter
,其值设置为适配器的键。上述定义的文件系统将产生一个 ID 为 gaufrette.bar_filesystem
的服务。alias
参数允许我们为其定义别名(在本例中为 foo_filesystem
)。
文件系统映射
您可以通过映射服务访问所有声明的文件系统。在之前的例子中,我们声明了一个bar
文件系统。
$container->get('knp_gaufrette.filesystem_map')->get('bar');
返回bar
实例的Gaufrette\Filesystem
。
用例
查看库的基本示例。