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.deve 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.17.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-depsVocê deve verificar violações de CS usando
$ make php-cs-comparee corrigi-los com
$ make php-cs-fixEste projeto ainda não possui nenhuma versão estável, mas não queremos quebrar o BC agora.