From eb38c3aedce817168fed7279366002608f45204b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=AD=A6=E7=94=B0=20=E6=86=B2=E5=A4=AA=E9=83=8E?= Date: Sun, 27 Sep 2026 12:31:09 +0900 Subject: [PATCH] =?UTF-8?q?zip=20=E3=82=92=E5=8E=9F=E6=96=87=E3=81=AE?= =?UTF-8?q?=E5=A4=89=E6=9B=B4=E3=81=AB=E8=BF=BD=E5=BE=93=20(2=E3=83=95?= =?UTF-8?q?=E3=82=A1=E3=82=A4=E3=83=AB)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit zip の 2 ファイルを原文の変更に追従しました。これで zip モジュールの未訳・要更新はなくなります。 - `ZipArchive::open()` と `ZipArchive::close()` に、アーカイブへの変更は `ZipArchive::close()` を呼ぶまでディスクに書き込まれず、ファイルシステム関連のエラーもその時点で報告される、という注記が追加されました(php/doc-en@5cb3563、php/doc-en#5274) ## 対象ファイル reference/zip/ (2) — ziparchive/close.xml, ziparchive/open.xml --- reference/zip/ziparchive/close.xml | 12 +++++++++++- reference/zip/ziparchive/open.xml | 13 ++++++++++++- 2 files changed, 23 insertions(+), 2 deletions(-) diff --git a/reference/zip/ziparchive/close.xml b/reference/zip/ziparchive/close.xml index 93b7fba9d3..caaea829be 100644 --- a/reference/zip/ziparchive/close.xml +++ b/reference/zip/ziparchive/close.xml @@ -1,6 +1,6 @@ - + @@ -18,6 +18,16 @@ 変更内容を保存します。このメソッドは、 スクリプトの最後で自動的にコールされます。 + + + アーカイブに対する変更 (エントリの追加・削除・名前の変更) はすべてメモリ上で行われ、 + このメソッドがコールされたときにはじめてディスクに書き込まれます。 + そのため、ファイルシステムの操作に関するエラー + (権限がない、ディレクトリが存在しないなど) は、 + 変更を行うメソッドをコールした時点ではなく、 + アーカイブを閉じる時点で発生します。 + + アーカイブにファイルが含まれていない場合、 グローバルフラグ ZipArchive::AFL_CREATE_OR_KEEP_FILE_FOR_EMPTY_ARCHIVE に従って、 diff --git a/reference/zip/ziparchive/open.xml b/reference/zip/ziparchive/open.xml index e459b08f84..a6246a9e3e 100644 --- a/reference/zip/ziparchive/open.xml +++ b/reference/zip/ziparchive/open.xml @@ -1,6 +1,6 @@ - + @@ -20,6 +20,17 @@ libzip 1.6.0 以降では、空のファイルは有効なアーカイブではなくなりました。 + + + ZipArchive::CREATE で新しいアーカイブを作成する場合、 + ZipArchive::close を呼び出すまで、 + ファイルは実際にはディスクに書き込まれません。 + そのため、ファイルシステムに関連するエラー + (権限がない、親ディレクトリが存在しないなど) は、 + このメソッドではなく、 + ZipArchive::close を呼び出したときに報告されます。 + + &reftitle.parameters;