Flysystem Nextcloud
Flysystem adapter for the Nextcloud filesystem
Table of Contents
Background
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.
Installation
The advised install method is through composer:
composer require pdsinterop/flysystem-nextcloud
Usage
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');
Develop
-
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.
Contribute
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.
License
All code created by PDS Interop is licensed under the MIT License.