Skip to content

Repository files navigation

OrangeJuicePlease Flysystem Webdav Adapter

Latest Version on Packagist Software License Build Status Coverage Status Quality Score Total Downloads

SensioLabsInsight

This is yet another webdav adapter for league/flysystem.

Comparing to their official webdav adapter league/flysystem-webdav,

this uses HEAD to check file existance, so it can work with nginx with ngx_http_dav_module, which doesn't support PROPFIND, and

[TODO] replaces sabre/dav with own dav client based on guzzle http 6.

Install

Via Composer

$ composer require phoenixgao/flysystem-webdav

Usage

<?php
use Sabre\DAV\Client;
use League\Flysystem\Filesystem;
use OrangeJuice\Flysystem\WebDAV\WebDAVAdapter;

$client = new Client($settings);
$adapter = new WebDAVAdapter($client);
$flysystem = new Filesystem($adapter);
# services.yml
services:
    devclient:
        class: Sabre\DAV\Client
        arguments:
            - { baseUri: http://ip:port/}

    oneup_flysystem.adapter.webdav:
        class: OrangeJuice\Flysystem\WebDAV\WebDAVAdapter
        arguments: ['', '']

# config.yml
oneup_flysystem:
    adapters:
        webdav_adapter:
            webdav:
                client: devclient
    filesystems:
        webdav:
            adapter: webdav_adapter
            alias: storage.webdav
<?php
$webdav = $this->getContainer()->get('storage.webdav');
$webdav->write("sample.txt", "123");

Change log

Please see CHANGELOG for more information what has changed recently.

Testing

$ composer test

Contributing

Please see CONTRIBUTING and CONDUCT for details.

Security

If you discover any security related issues, please email phoenix.x.gao@gmail.com instead of using the issue tracker.

Credits

License

The MIT License (MIT). Please see License File for more information.

About

WebDAV adapter for flysystem, supports ngx_http_dav_module

Resources

Contributing

Stars

6 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages