PHP

PHPのZipArchiveで空のzipファイルを作成する

はじめに

中身が入っていないzipファイルが必要になった時にちょっと戸惑った。

方法

add〜を呼び出さずにopen/closeするだけだとzipファイルは生成されません。
そこで、下記のようにaddEmptyDir() で相対パスでカレントディレクトリを指定します。

$zip = new \ZipArchive();
$zip->open('/foo/bar.zip', \ZipArchive::CREATE);
$zip->addEmptyDir('.');
$zip->close()