Я хочу узнать размер несжатого zip-файла, который хранится в контейнере aws s3. Как мы можем узнать в php?
На локальном сервере я узнаю, используя exec (‘unzip -l filename.zip’) в php.
Вы распаковываете почтовый индекс, чтобы узнать размер? .. Это немного излишне ..
Вот некоторый код, который поможет вам в этом, загружая zip, просматривая каждую запись, чтобы получить несжатый размер и вернуть его.
$zip = new ZipArchive();
if ($zip->open('myzip.zip')) {
var_dump(getTotalUncompressedSize($zip));
$zip->close();
}
function getTotalUncompressedSize(ZipArchive $zip)
{
$totalSize = 0;
for ($i = 0; $i < $zip->numFiles; $i++) {
$fileStats = $zip->statIndex($i);
$totalSize += $fileStats['size'];
}
return $totalSize;
}
Других решений пока нет …