龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > php编程 >

PHP文件 Zip 压缩

时间:2014-06-14 02:37来源:网络整理 作者:网络 点击:
分享到:
PHP文件 Zip 压缩 [代码片段(45行)]
/* creates a compressed zip file */
 function create_zip($files = array(),$destination = '',$overwrite = false) {
 //if the zip file already exists and overwrite is false, return false
 if(file_exists($destination) && !$overwrite) { return false; }
 //vars
 $valid_files = array();
 //if files were passed in...
 if(is_array($files)) {
 //cycle through each file
 foreach($files as $file) {
 //make sure the file exists
 if(file_exists($file)) {
 $valid_files[] = $file;
 }
 }
 }
 //if we have good files...
 if(count($valid_files)) {
 //create the archive
 $zip = new ZipArchive();
 if($zip->open($destination,$overwrite ? ZIPARCHIVE::OVERWRITE : ZIPARCHIVE::CREATE) !== true) {
 return false;
 }
 //add the files
 foreach($valid_files as $file) {
 $zip->addFile($file,$file);
 }
 //debug
 //echo 'The zip archive contains ',$zip->numFiles,' files with a status of ',$zip->status;

 //close the zip -- done!
 $zip->close();

 //check to make sure the file exists
 return file_exists($destination);
 }
 else
 {
 return false;
 }
 }
 /***** Example Usage ***/
 $files=array('file1.jpg', 'file2.jpg', 'file3.gif');
 create_zip($files, 'myzipfile.zip', true); 
精彩图集

赞助商链接