(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.