Flysystem is a filesystem abstraction which allows you to easily swap out a local filesystem for a remote one.
- Have a generic API for handling common tasks across multiple file storage engines.
- Have consistent output which you can rely on.
- Integrate well with other packages/frameworks.
- Be cacheable.
- Emulate directories in systems that don't support them, like AWS S3.
- Support third party plugins.
- Make it easy to test your filesystem interactions.
- Support streams for big file handling.
composer require league/flysystem
Want to get started quickly? Check out some of these integrations:
- Backup manager: https://github.com/backup-manager/backup-manager
- CakePHP integration: https://github.com/WyriHaximus/FlyPie
- Cilex integration: https://github.com/WyriHaximus/cli-fly
- Drupal: https://www.drupal.org/project/flysystem
- elFinder: https://github.com/barryvdh/elfinder-flysystem-driver
- Laravel integration: https://github.com/GrahamCampbell/Laravel-Flysystem
- Nette integration: https://github.com/contributte/flysystem
- Silex integration: https://github.com/WyriHaximus/SliFly
- Symfony integration:
- Yii 2 integration: https://github.com/creocoder/yii2-flysystem
- Zend Framework integration: https://github.com/bushbaby/BsbFlysystem
- PSR-11 containers: https://github.com/wshafer/psr11-flysystem
- Amazon Web Services - S3 V2: https://github.com/thephpleague/flysystem-aws-s3-v2
- Amazon Web Services - S3 V3: https://github.com/thephpleague/flysystem-aws-s3-v3
- Azure Blob Storage: https://github.com/thephpleague/flysystem-azure-blob-storage
- Memory: https://github.com/thephpleague/flysystem-memory
- PHPCR: https://github.com/thephpleague/flysystem-phpcr
- Rackspace Cloud Files: https://github.com/thephpleague/flysystem-rackspace
- Sftp (through phpseclib): https://github.com/thephpleague/flysystem-sftp
- WebDAV (through SabreDAV): https://github.com/thephpleague/flysystem-webdav
- Zip (through ZipArchive): https://github.com/thephpleague/flysystem-ziparchive
- AliYun OSS Storage: https://github.com/xxtime/flysystem-aliyun-oss
- AliYun OSS Storage: https://github.com/kaysonwu/flysystem-aliyun-oss
- Amazon Cloud Drive - https://github.com/nikkiii/flysystem-acd
- Azure File Storage: https://github.com/academe/flysystem-azure-file-storage
- Backblaze: https://github.com/mhetreramesh/flysystem-backblaze
- Chroot (filesystem from subfolder): https://github.com/fisharebest/flysystem-chroot-adapter
- ClamAV Scanner Adapter: https://github.com/mgriego/flysystem-clamav
- Citrix ShareFile: https://github.com/kapersoft/flysystem-sharefile
- Cloudinary: https://github.com/enl/flysystem-cloudinary
- Dropbox (with PHP 5.6 support): https://github.com/srmklive/flysystem-dropbox-v2
- Dropbox: https://github.com/spatie/flysystem-dropbox
- Fallback: https://github.com/Litipk/flysystem-fallback-adapter
- Gaufrette: https://github.com/jenkoian/flysystem-gaufrette
- GitHub: https://github.com/Radiergummi/flysystem-github-storage
- GitLab: https://github.com/RoyVoetman/Flysystem-Gitlab-storage
- Google Cloud Storage: https://github.com/Superbalist/flysystem-google-storage
- Google Drive: https://github.com/nao-pon/flysystem-google-drive
- Google Drive V2 (using regular paths): https://github.com/masbug/flysystem-google-drive-ext
- IBM Cloud Object Storage : https://github.com/tavux/flysystem-ibm-cos
- OneDrive: https://github.com/jacekbarecki/flysystem-onedrive
- OpenStack Swift: https://github.com/nimbusoftltd/flysystem-openstack-swift
- QiNiu OSS Storage: https://github.com/l396635210/flysystem-qiniu
- RAID: https://github.com/PHPGuus/flysystem-raid
- Redis (through Predis): https://github.com/danhunsaker/flysystem-redis
- Selectel Cloud Storage: https://github.com/ArgentCrusade/flysystem-selectel
- SinaAppEngine Storage: https://github.com/litp/flysystem-sae-storage
- PDO Database (optimised for use with large files when using the streams): https://github.com/phlib/flysystem-pdo
- PDO Database: https://github.com/IntegralSoftware/flysystem-pdo-adapter
- SSH/Shell: https://github.com/oliwierptak/flysystem-ssh-shell
- Adapter (using another Flysystem adapter)
- Memory (array caching)
- Redis (through Predis)
If you discover any security related issues, please email [email protected] instead of using the issue tracker.
Available as part of the Tidelift Subscription.
The maintainers of Flysystem and thousands of other packages are working with Tidelift to deliver commercial support and maintenance for the open source dependencies you use to build your applications. Save time, reduce risk, and improve code health, while paying the maintainers of the exact dependencies you use. Learn more.
Oh and if you've come down this far, you might as well follow me on twitter.