SegmentedDownload
in package
FinalYes
Ускоренная загрузка файла параллельными диапазонами (`Range`).
Узнаёт размер файла запросом HEAD и, если сервер поддерживает диапазоны
(Accept-Ranges: bytes), качает его $segments частями одновременно через
Pool. Каждая часть пишется прямо в файл назначения по своему смещению
— без временных файлов и склейки, память не растёт с размером файла. Если
диапазоны не поддерживаются или файл меньше числа частей, выполняется
обычная потоковая загрузка одним запросом.
Table of Contents
Methods
- __construct() : mixed
- download() : int
- Скачать файл в указанный путь.
Methods
__construct()
public
__construct(Client $client[, positive-int $segments = 4 ]) : mixed
Parameters
- $client : Client
-
клиент, выполняющий запросы
- $segments : positive-int = 4
-
число параллельных частей
download()
Скачать файл в указанный путь.
public
download(string $url, string $destination) : int
Parameters
- $url : string
-
адрес файла
- $destination : string
-
путь назначения
Tags
Return values
int —размер файла в байтах