ZipArchive::registerProgressCallback

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

ZipArchive::registerProgressCallbackアーカイブを閉じている間に更新できるようにコールバックを登録する

説明

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

アーカイブを閉じている間に更新できるように callback 関数を登録します。

パラメータ

rate

コールバックを呼び出す間の変更の割合(0.0 から 1.0 の間の値を設定します)

callback

この関数は現在の state (状態) を (0.0 から 1.0 の間の) float で受け取ります。

戻り値

成功した場合に true を、失敗した場合に false を返します。

この例は、php.zip という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();
}

注意

注意:

この関数は、libzip ≥ 1.3.0 と PHP をビルドした場合のみ利用できます。

参考