次のPHPファイルは、ZIPファイルを作成し、それが正常に動作するようにします。PHP:アルファベット順のZIP並べ替え
<?php
$zip = new ZipArchive();
$ZIP_name = "./path/Prefix_" .$date . ".zip";
if ($zip->open($ZIP_name, ZipArchive::CREATE)!==TRUE) {
exit("There is a ZIP Error");
}
if ($zip->open($ZIP_name, ZipArchive::CREATE)==TRUE) {
echo "ZIP File can be created" . "<br>";
}
foreach($list as $element) {
$path_and_filename = "../path_to_somewhere/product_"
. $element
. ".csv";
$zip->addFile($path_and_filename, basename($path_and_filename));
}
echo "numfiles: " . $zip->numFiles . "\n"; // number of element files
echo "status:" . $zip->status . "\n"; // Status "0" = okay
$zip->close();
?>
だけ小さな傷がある: 上記のforeachループは、すべての要素がアルファベット順にソートされている配列からの要素を取り出します。 ZIPファイルを作成した後、ZIP内のファイルの順序が変わり、ファイルサイズが違う可能性があります。
PHPでZIP内のCSVファイルを後で並べ替える方法はありますか? PHPでZIPを作成するのは初めてのことですが、ドキュメントに役立つものは何も見つかりませんでした。
あなたは、ファイルシステム内のファイルをソートしようとしていますか? o_O – Neodan
私はそれを美しくするためにやりたいだけです。 – Peter