(PHP >= 8.0.0, PECL zip >= 1.17.0)
ZipArchive::registerCancelCallback — Registra um callback para permitir o cancelamento durante o fechamento do arquivo compactado.
Registra uma função de callback
para permitir o cancelamento durante o fechamento do arquivo compactado.
callback
Se esta função retornar 0, a operação continuará; qualquer outro valor resultará no cancelamento.
Este exemplo cria um arquivo compactado ZIP php.zip e cancela a operação em algumas condições de execução.
Exemplo #1 Arquivar um arquivo
<?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();
}
Nota:
Esta função só está disponível se for construída com libzip ≥ 1.6.0.