(PHP >= 8.0.0, PECL zip >= 1.17.0)
ZipArchive::registerProgressCallback — アーカイブを閉じている間に更新できるようにコールバックを登録する
アーカイブを閉じている間に更新できるように 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 をビルドした場合のみ利用できます。