<?php // Function to Read ZIP Archive. Returns a two dimensional Array with data of each file in archive function readZipData($zip_file) { // PHP-MySQL Course - http://coursesweb.net/php-mysql/ $zip_data = array(); // will store arrays with data of each file in archive $zip = zip_open($zip_file); // if the $zip_file is opened, traverse the archive if($zip) { while ($zip_entry = zip_read($zip)) { // adds in $zip_data an array with data of each file in archive $zip_data[] = array( 'name' =>zip_entry_name($zip_entry), 'actual_filesize' => zip_entry_filesize($zip_entry), 'compressed_size' => zip_entry_compressedsize($zip_entry) ); } zip_close($zip); return $zip_data; } else echo "Failed to open $zip_file"; } /* Example */ //the path-name of the zip file $zip_file = 'dir/file.zip'; // get data of the $zip_file $zip_data = readZipData($zip_file); // output the resulted array (with data for archived files) echo '<pre>'; var_export($zip_data); echo '</pre>'; ?>This example will return an array like this:
array ( 0 => array ( 'name' => 'file1.txt', 'actual_filesize' => 388984, 'compressed_size' => 114339, ), 1 => array ( 'name' => 'image.jpg', 'actual_filesize' => 16942, 'compressed_size' => 16801, ), 2 => array ( 'name' => 'audio/music.mp3', 'actual_filesize' => 16942, 'compressed_size' => 16806, ) )
0 comments:
Post a Comment