Skip to content

Latest commit

 

History

History
111 lines (84 loc) · 4.7 KB

README.md

File metadata and controls

111 lines (84 loc) · 4.7 KB

League\Flysystem

Author Build Status Coverage Status Quality Score Software License Packagist Version Total Downloads

SensioLabsInsight Build status

Flysystem is a filesystem abstraction which allows you to easily swap out a local filesystem for a remote one.

Goals

  • 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 support none, like AwsS3.
  • Support third party plugins.
  • Make it easy to test your filesystem interactions.
  • Support streams for big file handling.

Installation

Through Composer, obviously:

composer require league/flysystem

You can also use Flysystem without using Composer by registering an autoloader function:

spl_autoload_register(function($class) {
    $prefix = 'League\\Flysystem\\';

    if ( ! substr($class, 0, 17) === $prefix) {
        return;
    }

    $class = substr($class, strlen($prefix));
    $location = __DIR__ . 'path/to/flysystem/src/' . str_replace('\\', '/', $class) . '.php';

    if (is_file($location)) {
        require_once($location);
    }
});

Integrations

Want to get started quickly? Check out some of these integrations:

Adapters

Caching

  • Memory (array caching)
  • Redis (through Predis)
  • Memcached
  • Adapter
  • Stash

Documentation

Check out the documentation

Security

If you discover any security related issues, please email [email protected] instead of using the issue tracker.

Enjoy

Oh and if you've come down this far, you might as well follow me on twitter.