Pages

Unzip an uploaded file using php

If you dont have shell access to your server and need to unzip a file on your php server you can use the script below:

Example 1. Extract all entries


<?php
$zip = new ZipArchive;
if ($zip->open('test.zip') === TRUE) {
$zip->extractTo('/my/destination/dir/');
$zip->close();
echo 'ok';
} else {
echo 'failed';
}
?>

Example 2. Extract only two entries


<?php
$zip = new ZipArchive;
$res = $zip->open('test_im.zip');
if ($res === TRUE) {
$zip->extractTo('/my/destination/dir/', array('pear_item.gif',
'testfromfile.php'));
$zip->close();
echo 'ok';
} else {
echo 'failed';
}
?>


ZipArchive::extractTo

ZipArchive::extractTo -- Extract the archive contents

Description

mixed ZipArchive::extractTo ( string destination [, mixed entries] )
Extract the complete archive or the given files to the specified destination.

Parameters

destination - Location where to extract the files.
entries - The entries to extract. It accepts either a single entry name or an array of names.
Return Values - Returns TRUE on success or FALSE on failure.

1 comment: