先添加PHP的ZIP文件扩展,
在使用的函数中,直接new ZipArchive得到ZIP的对象
函数如下:
//添加数据到压缩文件内
function addfiletozip($zipfiledata,$zipfilename=null,$path=null){
$zipfilename = $zipfilename==null ?getFileName() : $zipfilename;
$path = $path==null ? "./upload/download/" . date("Ymd") ."/" : $path;
if(!is_dir($path)){
mkdir($path,0777,true);
}
//组合zip文件具体路径
$zipfile = $path . $zipfilename . ".zip";
dump($zipfiledata);
$zip = new ZipArchive();
if($zip->open($zipfile,ZipArchive::OVERWRITE|ZipArchive::CREATE)==true) {
foreach ($zipfiledata as $key => $value) {
$zip -> addFile($value['file'],$value['filename']);
}
}
$zip -> close();
return $zipfile;
}