This package can backup files and a database to a WebDav server.
It takes the path of a given local directory and creates a PHAR archive with the files of the directory.
The base class can also connect to a given database using PDO and generate a backup file with SQL statements to recreate the database. The generated SQL file is also added to the PHAR archive.
The PHAR archive is compressed and transferred to a given remote server using the WebDAV protocol.
The package comes with several sub-classes specialized in configuring the connection to different WebDAV servers.
- PHP version 5.3.6 or higher
Yandex Disk
CloudMe
GoogleDrive
working through service dav-pocketDropBox
working through service dropdavtemporary does not workMail Disk
temporary does not workOneDrive
-
Install composer
-
Follow in the project folder:
composer require dmamontov/davbackup ~1.0.0
In config composer.json
your project will be added to the library dmamontov/davbackup
, who settled in the folder vendor/
. In the absence of a config file or folder with vendors they will be created.
If before your project is not used composer
, connect the startup file vendors. To do this, enter the code in the project:
require 'path/to/vendor/autoload.php';
require 'DavBackup.php';
$ya = new YandexBackup('[email protected]', 'test');
$ya->db('user', 'password', 'db');
$ya->folder('/var/www/public_html/');
$ya->backup();
class MyDavBackup extends DavBackup
{
const URL = 'https://dav.my.ru/';
public function __construct($login, $password)
{
parent::__construct(self::URL, (string) $login, (string) $password);
}
}