satana.konst/next-cloud-web-dav-sdk

Sdk for NextCloud WebDav Api

0.1.2 2020-07-24 08:52 UTC

This package is auto-updated.

Last update: 2024-05-06 19:39:52 UTC


README

#NextCloudWebDavSdk# Обертка на классы WebDav и Share

$sdk = new \NextCloudWebDavSdk\NextCloudWebDavSdk( 'http://192.168.0.1', 'login', 'pass' ); $response = $sdk->webDav->getListingFolder(); $response = $sdk->share->createShare();

Все методы классов расписаны ниже.

##WebDav##

Документация по работе с WebDav https://docs.nextcloud.com/server/latest/developer_manual/client_apis/WebDAV/index.html

###Авторизация### $webDav = new \NextCloudWebDavSdk\WebDav\Server( 'host', 'login', 'pass' );

###Получить список файлов### $response = $webDav->getListingFolder( '/path/to/file' );

###Скачать файл### $response = $webDav->downloadFile( '/path/to/download/file', 'path/to/save/file' );

###Загрузка файлов### $response = $webDav->uploadFile( 'path/to/upload/file/test_upload_pdf.pdf', '/path/for/save/file/' );

###Создать папку### $response = $webDav->createFolder( '/path/to/new/folder/', );

###Удалить файл или директорию### $response = $webDav->removeFileOrDirectory( '/path/to/file/or/directory', );

###Переместить файл или дирректорию### $response = $webDav->moveFileOrDirectory( '/path/file/to/move', '/path/file/to/destination' );

###Копировать файл или директорию### $response = $webDav->copyFileOrDirectory( '/path/file/to/copy', '/path/file/to/destination' );

###Поиск файлов и папок Выбираемые свойства искомых элементов
$selectProperties = ['{DAV:}getlastmodified','{DAV:}getetag', ... ];

Область поиска относительно корневой папки пользователя
$searchScope = '/path/to/destination/';

Уровень вложенности поиска
$searchScopeDepth = 'infinity';

Условия поиска
$searchWhere = ['eq::{http://owncloud.org/ns}fileid' => 999, ...]

Сортировка
$searchOrderBy = ['{http://owncloud.org/ns}fileid' => 'ascending', ...]

$response = $webDav->search($selectProperties, $searchScope, $searchScopeDepth, $searchWhere, $searchOrderBy);

##Share##

Документация по шарингу https://docs.nextcloud.com/server/latest/developer_manual/client_apis/OCS/ocs-share-api.html

###Авторизация### $share = new \NextCloudWebDavSdk\OCS\Share( 'host', 'login', 'pass' );

###Расшарить файл### $response = $share->createShare( 'path/to/share/file' );

###Удалить шару### $response = $share->removeShare( 'shareID' );

###Получить шару### $response = $share->getShares( 'path/to/share/file' );

###Обновить шару### $response = $share->updateShare( 'shareID' );