(PHP >= 8.0.0, PECL zip >= 1.17.0)
ZipArchive::registerCancelCallback — アーカイブを閉じている間にキャンセルできるようにコールバックを登録する
アーカイブを閉じている間にキャンセルできるように callback
関数を登録します。
callback
この関数が0を返すと、操作は続行されます。 それ以外の値を返すと、操作はキャンセルされます。
成功した場合に true
を、失敗した場合に false
を返します。
この例は、php.zip という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();
}
注意:
この関数は、libzip ≥ 1.6.0 と PHP をビルドした場合のみ利用できます。