闲者博客 - 解压 https://bk1314.com/tag/%E8%A7%A3%E5%8E%8B/ PHP压缩和解压代码段 https://bk1314.com/43.html 2022-02-25T18:59:25+08:00 [scode type="green"]PHP文件 Zip 压缩[/scode]<?php /* 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); ?>[scode type="green"]PHP解压缩 Zip文件[/scode]<?php /** * @param $file - path to zip file * @parm $destination - destination directory for unzipped files */ function unzip_file($file, $destination) { // create object $zip = new ZipArchive() ; // open archive if ($zip->open($file) !== TRUE) { die ('Could not open archive'); } // extract contents to destination directory $zip->extractTo($destination); // close archive $zip->close(); echo 'Archive extracted to directory'; } ?>