Flysystem adapter for the Nextcloud filesystem
This project is part of the PHP stack of projects by PDS Interop. It is used by the Solid-Nextcloud app.
As the functionality seemed useful for other projects, it was implemented as a separate package.
The advised install method is through composer:
composer require pdsinterop/flysystem-nextcloud
This package offers features to interact with the Filesystem provided by Nextcloud through the Flysystem API.
To use the adapter, instantiate it and add it to a Flysystem filesystem:
<?php
/** @var IRootFolder $rootFolder */
$folder = $rootFolder->getUserFolder('userId')->get('/some/directory');
// Create the Nextcloud Adapter
$adapter = new \Pdsinterop\Flysystem\Adapter\Nextcloud($folder);
// Create Flysystem as usual, adding the Adapter
$filesystem = new \League\Flysystem\Filesystem($adapter);
// Read the contents of a file
$content = $filesystem->read('/some.file');
-
Do not forget to install the required dependencies using
composer
. -
Most of the logic here involves Nextcloud and/or FlySystem. You'll want to familiarise yourself with their workings.
Questions or feedback can be given by opening an issue on GitHub.
All PDS Interop projects are open source and community-friendly. Any contribution is welcome! For more details read the contribution guidelines.
All PDS Interop projects adhere to the Code Manifesto as its code-of-conduct. Contributors are expected to abide by its terms.
There is a list of all contributors on GitHub.
For a list of changes see the CHANGELOG or the GitHub releases page.
All code created by PDS Interop is licensed under the MIT License.