mmieluch/laravel-vfs-provider

A Laravel service provider for Flysystem's wrapper around PHP-VFS.

1.1.0 2019-09-19 21:10 UTC

This package is auto-updated.

Last update: 2024-04-20 07:14:31 UTC


README

Latest Stable Version Total Downloads License

A service provider intended to use with Laravel 5.x for The League Flysystem's wrapper around PHP-VFS library.

Installation

  1. Update your project dependencies:

    composer require mmieluch/laravel-vfs-provider
  2. Register new service provider in config/app.php:

return [

    'providers' => [

        ...

        /*
         * 3rd Party Service Providers
         */
        Mmieluch\LaravelVfsProvider\LaravelVfsServiceProvider::class,

    ],

];
  1. Update your config/filesystems.php file:
return [

    ...

    'disks' => [

      // This is just an example name, you can call your disk
      // however you want :)
      'virtual' => [
          'driver' => 'vfs',
      ],

    ],

];

Now you can start using your new driver, just as you'd use a local driver:

// Get a handler for storage...
$storage = app('storage');
// Or, if your VFS disk is not a default one, you need to
// choose it from the pool of available disks.
$storage = app('storage')->disk('virtual');

// And you're ready to use your new virtual filesystem!
$storage->makeDirectory('foo');
$storage->put('foo/bar.txt', 'baz');

$storage->has('foo/bar.txt'); // Returns: true

echo $storage->get('/foo/bar.txt'); // Outputs: baz

// You'd like to use a facade? Why, go ahead!
Storage::put('test.txt', 'All about that bass');
// Again, if your virtual drive is not set as your default:
Storage::disk('virtual')->put('test.txt', 'No treble');

For full set of instructions on how to use the Laravel filesystem service visit Laravel's official documentation

TODO

  • set up path prefix (configuration root), like in other drivers;
  • add tests.

Bugs? Suggestions?

Feel free to file an issue or submit a PR.

License

This package is open-sourced software licensed under the MIT license.