ZipArchive::registerProgressCallback

(PHP >= 8.0.0, PECL zip >= 1.17.0)

ZipArchive::registerProgressCallbackРегистрирует callback-функцию для предоставления обновлений при закрытии архива

Описание

public ZipArchive::registerProgressCallback ( float $rate , callable $callback ) : bool

Регистрирует callback-функцию для предоставления обновлений при закрытии архива.

Список параметров

rate

Изменение между каждым вызовом callback-функции (от 0,0 до 1,0).

callback

Функция будет получать текущее состояние (state) в виде числа с плавающей запятой (float) (от 0,0 до 1,0).

Возвращаемые значения

Возвращает true в случае успешного завершения или false в случае возникновения ошибки.

Примечания

Замечание:

Функция доступна, если PHP скимпилирован с libzip ≥ 1.6.0.

Примеры

В этом примере создается ZIP-архив php.zip и отображается прогрессия.

Пример #1 Архивация файла

$zip = new ZipArchive();
if ($zip->open('php.zip', ZipArchive::CREATE | ZipArchive::OVERWRITE)) {
    $zip->addFile(PHP_BINARY, 'php');
    $zip->registerProgressCallback(0.05, function ($r) {
        printf("%d%%\n", $r * 100);
    });
    $zip->close();
}

Смотрите также