public function downLoad($dataUrl,$saveName)
{
$datalist = [
ROOT_PATH.'/public/introduce/110.docx',
ROOT_PATH.'/public/upfile/110.zip'
];
// print_r($datalist);die;
$filename = ROOT_PATH.'\public\/'.$saveName.'.zip';
if(file_exists($filename)){
unlink($filename);
}
$zip = new \ZipArchive();
if ($zip->open($filename,\ZipArchive::CREATE)!== true){
exit('无法打开文件,或者文件创建失败');
}
foreach ($dataUrl as $index => $item) {
if (DIRECTORY_SEPARATOR=='\\'){
$item = str_replace('/',DIRECTORY_SEPARATOR,$item);
$filename = str_replace('/',DIRECTORY_SEPARATOR,$filename);
}
// var_dump($item);
// var_dump(file_exists($item));die;
if (file_exists($item)){
$zip->addFile($item,basename($item));
}
}
$zip->close();
if(!file_exists($filename)){
exit("无法找到文件"); //即使创建,仍有可能失败
}
header('Content-Type: application/zip');
header('Content-disposition: attachment; filename='.basename($filename));
header('Content-Length: ' . filesize($filename));
@readfile($filename);
@unlink ( $filename );
}
public function unzip_file($file, $dir){
// 实例化对象
$zip = new ZipArchive() ;
//打开zip文档,如果打开失败返回提示信息
if ($zip->open($file) !== TRUE) {
die ("Could not open archive");
}
//将压缩文件解压到指定的目录下
$zip->extractTo($dir);
//关闭zip文档
$zip->close();
}