Simple function that return total size of files in archive.
May be useful for check for zip bombs.
<?php
function get_zip_originalsize($filename) {
$size = 0;
$resource = zip_open($filename);
while ($dir_resource = zip_read($resource)) {
$size += zip_entry_filesize($dir_resource);
}
zip_close($resource);
return $size;
}
$size = get_zip_originalsize('file.zip');
echo "original size: $size bytes\n";
?>
zip_entry_filesize
(PHP 4 >= 4.1.0, PHP 5 >= 5.2.0, PECL zip >= 1.0.0)
zip_entry_filesize — ディレクトリエントリの実際のファイルサイズを取得する
説明
int zip_entry_filesize
( resource
$zip_entry
)ディレクトリエントリの実際のファイルサイズを返します。
返り値
ディレクトリエントリのサイズ
Reflex
17-Jul-2010 02:17
