Gaufrette fournit une couche d'abstraction du système de fichiers.
Imaginez que vous deviez gérer beaucoup de médias dans un projet PHP. Voyons comment tirer parti de cette situation à votre avantage en utilisant Gaufrette.
La couche d'abstraction du système de fichiers vous permet de développer votre application sans avoir besoin de savoir où et comment tous ces médias seront stockés.
Un autre avantage est la possibilité de mettre à jour l'emplacement des fichiers sans aucun impact sur le code en dehors de la définition de votre système de fichiers. Par exemple, si votre projet grandit très vite et si votre serveur atteint ses limites, vous pouvez facilement déplacer vos médias dans un serveur Amazon S3 ou toute autre solution.
Lisez la documentation officielle de Gaufrette.
Chaque adaptateur maintenu dispose désormais d’un métapaquet dédié. Vous pouvez trouver la liste sur packagist. Nous vous recommandons fortement de les utiliser car ils contiennent leurs propres exigences : vous n'avez plus à vous soucier des dépendances tierces à installer avant d'utiliser Gaufrette.
L'intégration Symfony est disponible via KnpLabs/KnpGaufretteBundle.
Voici la liste des responsables dédiés pour chaque adaptateur non obsolète. Si vous ne recevez pas de réponse à votre problème ou à votre pull request dans les délais, envoyez-nous un ping :
Adaptateur | Référent |
---|---|
AsyncAws S3 | @Nyholm |
AWSS3 | @NiR- |
AzureBlobStorage | @NiR- |
DoctrineDbal | @pedrotroller, @NicolasNSSM |
Système de mouche | @nicolasmure |
FTP | @fabschurt |
GoogleCloudStorage | @AntoineLelaisant |
GrilleFS | @NiR- |
En mémoire | |
Locale | |
OpenCloud | @NiR- |
PhpseclibSftp | @fabschurt |
Fermeture éclair |
Pour les adaptateurs InMemory
, Local
et Zip
toutes les personnes figurant dans cette liste sont considérées comme des responsables.
Nécessite :
.env
: $ make docker.dev
et configurez-le comme vous le souhaitez.
$ make docker.build
$ make docker.all-deps
$ make docker.tests
Vous pouvez également utiliser une version différente de PHP, définissez simplement la variable d'environnement PHP_VERSION
sur l'une de ces valeurs lors de l'appel d'une cible make :
7.1
7.2
(par défaut)7.3
(La configuration Docker pour PHP 7.3 est disponible. Cependant, l'extension ssh2 n'est pas installée car elle n'est pas encore disponible pour PHP 7.3) Voir le fichier docker-compose.yml
pour plus de détails.
Vous devrez effacer les dépendances précédemment installées lors du passage d'une version à une autre. Pour ce faire, exécutez :
$ make clear-deps
$ PHP_VERSION= < the_version_you_want_to_use > make build install-deps
Vous devez vérifier les violations CS en utilisant
$ make php-cs-compare
et réparez-les avec
$ make php-cs-fix
Ce projet n'a pas encore de version stable mais nous ne voulons pas casser BC maintenant.