Installation de PHP et des dépendances :

Pour installer PHP sur votre environnement, rendez-vous sur : https://www.php.net/manual/fr/install.php.

Une fois que votre environnement PHP est fonctionnel (le hello-world.php fonctionne), installez php-curl et SabreDAV (client WebDAV pour PHP). Voici un exemple, à adapter selon votre environnement, sous Linux (Debian) :

apt update
apt install php-curl
composer require sabre/dav ~3.2.0


Rendez-vous ici pour la documentation SabreDAV : https://sabre.io/dav/install/.

Vous pouvez maintenant connecter votre code PHP à votre compte Leviia.

Création du client :

Pour initialiser les informations de connexion :
use Sabre\DAV\Client;
include 'vendor/autoload.php';

$settings = array(
    'baseUri' => 'https://cloud.leviia.com/',
    'userName' => 'thomas',
    'password' => '*******',
);

$client = new Client($settings);
$base = "/remote.php/dav/files/$settings[userName]";


Lister le contenu d'un répertoire :

Pour lister le contenu du repertoire racine ("/") utilisez :
$response = $client->propfind($base."/", array(
    '{DAV:}displayname',
    '{DAV:}getcontentlength',
),1);

echo '<pre>'; print_r($response); echo '</pre>';

Pour lister le contenu d'un sous répertoire, remplacez simplement "/" par le chemin du répertoire :
$response = $client->propfind($base."/documents/", array(
    '{DAV:}displayname',
    '{DAV:}getcontentlength',
),1);

echo '<pre>'; print_r($response); echo '</pre>';


Envoyer un fichier sur Leviia :

$fh_res = fopen("/CHEMIN/VERS/LE/FICHIER", 'r');

$response = $client->request('PUT', $base.'/FICHIER', $fh_res);


Télécharger un fichier depuis Leviia :

$response = $client->request('GET',$base.'/FICHIER/DISTANT');
$file = fopen('/CHEMIN/LOCAL', "w+");
fputs($file, $response["body"]);
fclose($file);

Créer un dossier sur Leviia :

$response = $client->request('MKCOL', $base.'/CHEMIN');

Supprimer un dossier/fichier sur Leviia :

$response = $client->request('DELETE', $base.'/CHEMIN');
Cet article a-t-il répondu à vos questions ?
Annuler
Merci !