angryjack/backup-engine

用于自动备份的PHP库

v0.1 2018-12-26 12:38 UTC

This package is auto-updated.

Last update: 2024-09-27 01:46:14 UTC


README

文件自动备份系统,支持将备份文件上传到Yandex.Disk

安装

通过Composer安装

$ composer require angryjack/backup-engine

使用

初始化
use Angryjack\BackupEngine\Backup;

// подключаем автозагрузчик
require __DIR__ . '/vendor/autoload.php';

// рабочая дирректория с файлами которые требуется сохранять
$workPath = '/home/user/files';

// папка бекапов на яндекс диске
$backupPath = '/backups';

// токен яндекс диска
$oauth = '';

$backup = new Backup($workPath, $backupPath, $oauth);
修改目录
// устанавливаем(изменяем) рабочую директорию
$backup->setWorkPath('/home/user/files');

// устанавливаем(изменяем) директорию для резервного копирования
$backup->setBackupPath('/backups');
文件备份
// метод files первым параметром принимает регулярное выражение
// указывается какие файлы необходимо копировать
$pattern = '/^_.*sql.gz\z/';

// Удалять файлы после заругзки на яндекс диск (По умолчанию false)
$deleteAfterBackup = false;

$backup->files($pattern, $deleteAfterBackup);
文件夹备份
// метод folders первым параметром принимает регулярное выражение
// указывается какие папки необходимо копировать
$pattern = '/^[^\.]/';

// в отличие от метода files, метод folders создает архив zip архив копируемой папки
// Удалять созданный архив после заругзки на яндекс диск (По умолчанию true)
$deleteAfterBackup = true;

$backup->folders($pattern, $deleteAfterBackup);

使用建议

使用最新版本的php。测量显示,使用php7.2创建存档的速度比php5.6快 ~6倍

创建OAUTH令牌的说明

  1. 创建新应用
  2. 在注册或编辑应用时,点击 平台 → Web服务 → Callback URI 字段中的“替换开发URL”链接。
  3. 点击以下类型的链接
https://oauth.yandex.ru/authorize?response_type=token&client_id=<идентификатор приложения>
  1. 在打开的页面上点击“确认”按钮,以允许访问账户。如果该应用程序已经获得令牌且其有效期尚未过期,则不需要再次允许访问。

创建令牌的详细说明可通过以下链接获取: Yandex中的OAuth