1. Go to this page and download the library: Download muckiware/restic library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
muckiware / restic example snippets
declare(strict_types=1);
use MuckiRestic\Library\Backup;
class BackupService
{
public function createRepository(): void
{
try {
$backupClient = Backup::create();
$backupClient->setBinaryPath('./bin/restic_0.17.3_linux_386'); //optional
$backupClient->setRepositoryPassword('1234');
$backupClient->setRepositoryPath('./path_to_repository');
echo $backupClient->createRepository()->getOutput();
} catch (\Exception $e) {
echo $e->getMessage();
}
}
}
declare(strict_types=1);
use MuckiRestic\Library\Backup;
class BackupService
{
public function createBackup(): void
{
try {
$backupClient = Backup::create();
$backupClient->setBinaryPath('./bin/restic_0.17.3_linux_386'); //optional
$backupClient->setRepositoryPassword('1234');
$backupClient->setRepositoryPath('./path_to_repository');
$backupClient->setBackupPath('./path_to_backup_folder'););
echo $backupClient->createBackup()->getOutput();
} catch (\Exception $e) {
echo $e->getMessage();
}
}
}
declare(strict_types=1);
use MuckiRestic\Library\Backup;
class BackupService
{
public function createBackup(): void
{
try {
$backupClient = Backup::create();
$backupClient->setBinaryPath('./bin/restic_0.17.3_linux_386'); //optional
$backupClient->setRepositoryPassword('1234');
$backupClient->setRepositoryPath('./path_to_repository');
echo $backupClient->checkBackup()->getOutput();
} catch (\Exception $e) {
echo $e->getMessage();
}
}
}
declare(strict_types=1);
use MuckiRestic\Library\Manage;
class ManageService
{
public function getSnapshotList(): void
{
try {
$manageClient = Manage::create();
$manageClient->setBinaryPath('./bin/restic_0.17.3_linux_386'); //optional
$manageClient->setRepositoryPassword('1234');
$manageClient->setRepositoryPath('./path_to_repository');
echo $manageClient->getSnapshots()->getOutput();
} catch (\Exception $e) {
echo $e->getMessage();
}
}
}
declare(strict_types=1);
use MuckiRestic\Library\Manage;
class ManageService
{
public function removeOldSnapshots(): void
{
try {
$manageClient = Manage::create();
$manageClient->setBinaryPath('./bin/restic_0.17.3_linux_386'); //optional
$manageClient->setRepositoryPassword('1234');
$manageClient->setRepositoryPath('./path_to_repository');
$manageClient->setKeepDaily(1); //optional
$manageClient->setKeepWeekly(2); //optional
$manageClient->setKeepMonthly(4); //optional
$manageClient->setKeepYearly(5); //optional
echo $manageClient->removeSnapshots()->getOutput();
} catch (\Exception $e) {
echo $e->getMessage();
}
}
}
declare(strict_types=1);
use MuckiRestic\Library\Restore;
class RestoreService
{
public function createRestore(): void
{
try {
$restoreClient = Restore::create();
$restoreClient->setBinaryPath('./bin/restic_0.17.3_linux_386'); //optional
$restoreClient->setRepositoryPassword('1234');
$restoreClient->setRepositoryPath('./path_to_repository');
$restoreClient->setRestoreTarget('./path_to_restore_folder');
$restoreClient->setRestoreItem('snapshot_hash'); //optional
echo $restoreClient->createRestore()->getOutput();
} catch (\Exception $e) {
echo $e->getMessage();
}
}
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.