PHP ziparchive is a PHP extension class, you can easily achieve the zip file compression and decompression, before using the first to ensure that the PHP ZIP extension is open.
-
- /* Description: A function that compresses multiple files into a single zip file
- * @param $files Array type
- * @param the path to the destination target file
- * @param $overwrite whether to overwrite the same file as the target file
- */
- function Create_zip ($files = Array (), $destination = ", $overwrite = False) {
- Returns False if the zip file already exists and is set to No Override
- if (file_exists ($destination) &&! $overwrite) {return false;}
- $valid _files = Array ();
- Get to a real valid file name
- if (Is_array ($files)) {
- foreach ($files as $file) {
- if (file_exists ($file)) {
- $valid _files[] = $file;
- }
- }
- }
- If there is a real valid file
- if (count ($valid _files)) {
- $zip = new Ziparchive ();
- Open file Overwrite if file already exists, if not, create
- if ($zip->open ($destination, $overwrite? Ziparchive::overwrite:ziparchive::create)!== true) {return false;}
- To add a file to a compressed file
- foreach ($valid _files as $file) {
- $zip->addfile ($file, $file);
- }
- Close File
- $zip->close ();
- Detects if a file exists
- return file_exists ($destination);
- }else{
- return false;
- }
- }
- $files = Array (' tg.php ');
- Create_zip ($files, ' Tg.zip ', true);
- ?>
Copy Code
|
File compression, PHP, zip