(PHP >= 8.0.0, PECL zip >= 1.17.0)
ZipArchive::registerCancelCallback — Регистрирует callback-функцию для разрешения отмены во время закрытия архива
Регистрирует callback-функцию для разрешения отмены во время закрытия архива.
callbackЕсли функция вернёт 0, операция продолжится, при другом значении она будет отменена.
Функция возвращает true, если выполнилась успешно, или false, если возникла ошибка.
В этом примере создаётся ZIP-архив php.zip и отменяется операция при некоторых условиях запуска.
Пример #1 Архивация файла
<?php
$zip = new ZipArchive();
if ($zip->open('php.zip', ZipArchive::CREATE | ZipArchive::OVERWRITE)) {
$zip->addFile(PHP_BINARY, 'php');
$zip->registerCancelCallback(function () {
return ($someruncondition ? -1 : 0);
});
$zip->close();
}Замечание:
Функция доступна, если PHP скомпилирован с libzip ≥ 1.6.0.