PHP文件 Zip 压缩 /* creates a compressed zip file */
注意:开启PHP zip压缩扩展extension=php_zip.dll
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=a rray();
//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
;
}
}
/***** 调用 ***/
$files=
array
(
'file1.jpg'
,
'file2.jpg'
,
'file3.gif'
);
create_zip($files,
'myzipfile.zip'
,
true
);
PHP解压缩 Zip 文件
/* @file - path to zip file *@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'
;