To unzip with PHP you need to have your PHP server compiled with php_zip.dll on Linux or the php_zip.dll extension active on Windows(activate it from php.ini).

$zip = zip_open("");
//first we open the zip file, $zip is a file handler

if ($zip) {
while ($zip_entry = zip_read($zip)) {
//reading each zip entry (zip file)

$fp = fopen("zip/".zip_entry_name($zip_entry), "w");
//open the file for writing on the server

if (zip_entry_open($zip, $zip_entry, "r")) {
//open zip entry
$buf = zip_entry_read($zip_entry, zip_entry_filesize($zip_entry));
//read an entire zip entry/file
fwrite($fp,"$buf");//write the file
zip_entry_close($zip_entry);//close zip entry
fclose($fp);//close file on server


zip_close($zip);//close zip stream