note 48142 added to ref.zip

From: Date: Mon, 13 Dec 2004 18:55:45 +0000
Subject: note 48142 added to ref.zip
Groups: php.notes 
Request: Send a blank email to php-notes+get-81762@lists.php.net to get a copy of this message
I have had problems with the function of kristiankjaer to unpack zipfiles within any directories. So I wrote a little extension. <?php function unpackZip($dir,$file) { if ($zip = zip_open($dir.$file.".zip")) { if ($zip) { mkdir($dir.$file); while ($zip_entry = zip_read($zip)) { if (zip_entry_open($zip,$zip_entry,"r")) { $buf = zip_entry_read($zip_entry, zip_entry_filesize($zip_entry)); $dir_name = dirname(zip_entry_name($zip_entry)); if ($dir_name != ".") { $dir_op = $dir.$file."/"; foreach ( explode("/",$dir_name) as $k) { $dir_op = $dir_op . $k; if (is_file($dir_op)) unlink($dir_op); if (!is_dir($dir_op)) mkdir($dir_op); $dir_op = $dir_op . "/" ; } } $fp=fopen($dir.$file."/".zip_entry_name($zip_entry),"w"); fwrite($fp,$buf); zip_entry_close($zip_entry); } else return false; } zip_close($zip); } } else return false; return true; } ?> ---- Manual Page -- http://www.php.net/manual/en/ref.zip.php Edit -- http://master.php.net/manage/user-notes.php?action=edit+48142 Delete -- http://master.php.net/manage/user-notes.php?action=delete+48142&report=yes Reason: bad code -- http://master.php.net/manage/user-notes.php?action=delete+48142&report=yes&reason=bad+code Reason: spam -- http://master.php.net/manage/user-notes.php?action=delete+48142&report=yes&reason=spam Reason: useless example -- http://master.php.net/manage/user-notes.php?action=delete+48142&report=yes&reason=useless+example Reason: contains commercial links -- http://master.php.net/manage/user-notes.php?action=delete+48142&report=yes&reason=contains+commercial+links Reason: useless note -- http://master.php.net/manage/user-notes.php?action=delete+48142&report=yes&reason=useless+note Reject -- http://master.php.net/manage/user-notes.php?action=reject+48142&report=yes Search -- http://master.php.net/manage/user-notes.php

« previous php.notes (#81762) next »