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 — Devuelve el tamaño del fichero actual de una entrada de directorio
Descripción
int zip_entry_filesize
( resource
$zip_entry
)Devuelve el tamaño actual de una entrada de directorio específica.
Valores devueltos
El tamaño de una entrada de directorio.
Ver también
- zip_open() - Abre un fichero ZIP
- zip_read() - Leer la siguiente entrada en el fichero ZIP
Reflex ¶
2 years ago
