Gaufrette fornece uma camada de abstração do sistema de arquivos.
Imagine que você precisa gerenciar muitas mídias em um projeto PHP. Vamos ver como tirar vantagem dessa situação usando Gaufrette.
A camada de abstração do sistema de arquivos permite que você desenvolva seu aplicativo sem a necessidade de saber onde e como todas essas mídias serão armazenadas.
Outra vantagem disso é a possibilidade de atualizar a localização dos arquivos sem qualquer impacto no código além da definição do seu sistema de arquivos. Por exemplo, se o seu projeto cresce muito rápido e o seu servidor atinge seus limites, você pode facilmente mover suas mídias em um servidor Amazon S3 ou qualquer outra solução.
Leia a documentação oficial do Gaufrette.
Cada adaptador mantido agora possui um metapacote dedicado. Você pode encontrar a lista no packagist. É altamente recomendável que você os use, pois eles contêm seus próprios requisitos : você não precisa mais se preocupar com dependências de terceiros para instalar antes de usar o Gaufrette.
A integração do Symfony está disponível através do KnpLabs/KnpGaufretteBundle.
Aqui está a lista do(s) mantenedor(es) dedicado(s) para cada adaptador não obsoleto. Se você não receber nenhuma resposta ao seu problema ou solicitação pull em tempo hábil, envie-nos um ping:
Adaptador | Referente |
---|---|
AsyncAws S3 | @Nyholm |
AWSS3 | @NiR- |
Armazenamento AzureBlob | @NiR- |
DoutrinaDbal | @pedrotroller, @NicolasNSSM |
Sistema de mosca | @nicolasmure |
FTP | @fabschurt |
GoogleCloudStorage | @AntoineLelaisant |
GridFS | @NiR- |
InMemory | |
Local | |
Nuvem aberta | @NiR- |
PhpseclibSftp | @fabschurt |
CEP |
Para adaptadores InMemory
, Local
e Zip
, todos nesta lista são considerados mantenedores.
Requer:
.env
: $ make docker.dev
e configure-o como desejar.
$ make docker.build
$ make docker.all-deps
$ make docker.tests
Você também pode usar uma versão diferente do php, simplesmente defina PHP_VERSION
env var para qualquer um destes valores ao chamar um make target :
7.1
7.2
(padrão)7.3
(A configuração do docker para PHP 7.3 está disponível. No entanto, a extensão ssh2 não está instalada porque ainda não está disponível para PHP 7.3) Consulte o arquivo docker-compose.yml
para obter mais detalhes.
Você precisará limpar as dependências instaladas anteriormente ao mudar de uma versão para outra. Para fazer isso, execute:
$ make clear-deps
$ PHP_VERSION= < the_version_you_want_to_use > make build install-deps
Você deve verificar violações de CS usando
$ make php-cs-compare
e corrigi-los com
$ make php-cs-fix
Este projeto ainda não possui nenhuma versão estável, mas não queremos quebrar o BC agora.