PHPackages                             mxmilu666/nyadav - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [HTTP &amp; Networking](/categories/http)
4. /
5. mxmilu666/nyadav

ActiveLibrary[HTTP &amp; Networking](/categories/http)

mxmilu666/nyadav
================

The simple WebDAV client for PHP and Swoole

v1.7(1y ago)437Apache-2.0PHPPHP ^8.0

Since Jul 27Pushed 1y ago1 watchersCompare

[ Source](https://github.com/Mxmilu666/NyaDAV)[ Packagist](https://packagist.org/packages/mxmilu666/nyadav)[ RSS](/packages/mxmilu666-nyadav/feed)WikiDiscussions main Synced yesterday

READMEChangelogDependencies (1)Versions (9)Used By (0)

[![NyaDAV](https://camo.githubusercontent.com/e17762aa01a863421ac417bb6878162ef5d76a0f2d9a7ef89995839783b1d7a8/68747470733a2f2f736f6369616c6966792e6769742e63692f4d786d696c753636362f4e79614441562f696d6167653f6465736372697074696f6e3d3126666f726b733d31266973737565733d31266c616e67756167653d31266e616d653d31266f776e65723d312670756c6c733d31267374617267617a6572733d31267468656d653d4175746f)](https://camo.githubusercontent.com/e17762aa01a863421ac417bb6878162ef5d76a0f2d9a7ef89995839783b1d7a8/68747470733a2f2f736f6369616c6966792e6769742e63692f4d786d696c753636362f4e79614441562f696d6167653f6465736372697074696f6e3d3126666f726b733d31266973737565733d31266c616e67756167653d31266e616d653d31266f776e65723d312670756c6c733d31267374617267617a6572733d31267468656d653d4175746f)

🐱 NyaDAV
========

[](#-nyadav)

✨ The simple WebDAV client for PHP and Swoole ✨

Features
--------

[](#features)

- 📄 Get file list
- 📏 Get file size
- 📥 Download files
- 📤 Upload files
- ❌ Delete files

Requirements
------------

[](#requirements)

- PHP 8.0+
- Swoole 5.1.0+

Installation
------------

[](#installation)

You can install NyaDAV via Composer:

```
composer require mxmilu666/nyadav
```

Usage
=====

[](#usage)

Initialize the Client
---------------------

[](#initialize-the-client)

```
use NyaDAV\NyaDAV;
use NyaDAV\NyaDAVException;

try {
    $dav = new NyaDAV('example.com', 80, false); // Set true for SSL
} catch (NyaDAVException $e) {
    echo $dav->err;
    //or
    echo 'Error: ' . $e->getMessage();
}
```

Set Client Settings
-------------------

[](#set-client-settings)

```
$dav->set([
    'auth' => [
        'username' => 'your-username',
        'password' => 'your-password'
    ],
    'depth' => 1
]);
```

Get File List
-------------

[](#get-file-list)

```
try {
    $files = $dav->getfilelist('/remote.php/webdav/');
    $dav->close();
    print_r($files);
} catch (NyaDAVException $e) {
    echo $dav->err;
    //or
    echo 'Error: ' . $e->getMessage();
}
```

Get File Size
-------------

[](#get-file-size)

```
$size = $dav->getfilesize('/remote.php/webdav/test.txt');
$dav->close();
echo 'File Size: ' . $size;
```

Download File
-------------

[](#download-file)

Local download:

```
$fileInfo = $dav->getfile('/remote.php/webdav/test.txt', 'local_test.txt');
$dav->close();
print_r($fileInfo);
```

Cloud download (302):

```
$fileInfo = $dav->getfile('/remote.php/webdav/test.txt');
$dav->close();
print_r($fileInfo);
```

Upload File
-----------

[](#upload-file)

```
try {
    $success = $dav->uploadfile('/remote.php/webdav/uploaded.txt', 'local_upload.txt');
    $dav->close();
    if ($success) {
        echo 'File uploaded successfully!';
    }
} catch (NyaDAVException $e) {
    echo $dav->err;
    //or
    echo 'Error: ' . $e->getMessage();
}
```

Delete File
-----------

[](#delete-file)

```
try {
    $success = $dav->deletefile('/remote.php/webdav/uploaded.txt');
    $dav->close();
    if ($success) {
        echo 'File deleted successfully!';
    }
} catch (NyaDAVException $e) {
    echo $dav->err;
    //or
    echo 'Error: ' . $e->getMessage();
}
```

File Exists
-----------

[](#file-exists)

```
try {
    $success = $dav->file_exists('/remote.php/webdav/test.txt');
    $dav->close();
    if ($success) {
        echo 'exists';
    }
    else{
        echo 'not exist';
    }
} catch (NyaDAVException $e) {
    echo $dav->err;
    //or
    echo 'Error: ' . $e->getMessage();
}
```

Contributing
============

[](#contributing)

Feel free to contribute by opening issues or submitting pull requests. We welcome all contributions! 🌟

License
=======

[](#license)

This project is licensed under the `Apache-2.0` License.

###  Health Score

27

—

LowBetter than 47% of packages

Maintenance32

Infrequent updates — may be unmaintained

Popularity11

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity50

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~2 days

Total

8

Last Release

691d ago

PHP version history (2 changes)v1.0PHP ^8.0 || ^8.1 || ^8.2

v1.6PHP ^8.0

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/82694310?v=4)[Mxmilu](/maintainers/Mxmilu666)[@Mxmilu666](https://github.com/Mxmilu666)

---

Top Contributors

[![Mxmilu666](https://avatars.githubusercontent.com/u/82694310?v=4)](https://github.com/Mxmilu666 "Mxmilu666 (15 commits)")

---

Tags

phpclientlibraryWebDAVswoole

### Embed Badge

![Health badge](/badges/mxmilu666-nyadav/health.svg)

```
[![Health](https://phpackages.com/badges/mxmilu666-nyadav/health.svg)](https://phpackages.com/packages/mxmilu666-nyadav)
```

###  Alternatives

[swlib/saber

Swoole coroutine HTTP client

982149.8k30](/packages/swlib-saber)[simps/mqtt

MQTT Protocol Analysis and Coroutine Client for PHP

39557.9k12](/packages/simps-mqtt)[swoole/grpc

Grpc PHP Client base on Swoole Http2 Coroutine

19820.0k1](/packages/swoole-grpc)[swoole/etcd-client

Grpc PHP Client base on Swoole Http2 Coroutine

1983.3k1](/packages/swoole-etcd-client)[swoft/http-client

HTTP Client Component for Swoft

1139.3k4](/packages/swoft-http-client)[iris/nsq_to_swoole

a strong php client for NSQ using swoole extension

334.8k](/packages/iris-nsq-to-swoole)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
