This article mainly introduces the PHP export file compression package ZipArchive, which has certain reference value. Now I share it with you. Friends in need can refer to it
//写入xls文件 function pro_xls($sContent,$_userid,$sname){ //生成xls文件 $exportdir =PHP_ROOT.'data/export/'.$_userid.'/'; if(!is_dir($exportdir)) mkdir($exportdir); $elsfile=$exportdir.$sname.'.xls'; $file = fopen($elsfile, 'w'); fwrite($file, $sContent); fclose($file); return $elsfile; } //zip function pro_zip($aFiles,$_userid,$sname){ //zip $exportdir =PHP_ROOT.'data/export/'.$_userid.'/'; $zipname=$sname.'.zip'; $zip_file_path=$exportdir.$zipname; $oZip = new ZipArchive(); if($oZip->open($zip_file_path,ZipArchive::CREATE)==TRUE){ foreach ($aFiles as $file){ $oZip->addFile($exportdir.$file, $file); } $oZip->close(); //下载链接 $downfile="http://".$_SERVER['HTTP_HOST'].'/data/export/'.$_userid.'/'.$zipname; return $downfile; } return false; } //csv用 function pro_zip_csv($info,$sContent,$_userid,$sname){ $exportdir =PHP_ROOT.'data/export/'.$_userid.'/'; if(!is_dir($exportdir)) mkdir($exportdir); //生成csv文件 $elsfile=$exportdir.$sname.'.csv'; $fp = fopen($elsfile, 'w'); //Windows下使用BOM来标记文本文件的编码方式 fwrite($fp,chr(0xEF).chr(0xBB).chr(0xBF)); foreach ($info as $line) { fputcsv($fp, $line); } fclose($fp); //zip $zipname=time().'.zip'; $zip_file_path=$exportdir.$zipname; $oZip = new ZipArchive(); if($oZip->open($zip_file_path,ZipArchive::CREATE)==TRUE){ $oZip->addFile($elsfile, $sname.'.csv'); $oZip->close(); //下载链接 $downfile="http://".$_SERVER['HTTP_HOST'].'/data/export/'.$_userid.'/'.$zipname; return $downfile; } return false; }
The above is the detailed content of php export file compressed package ZipArchive. For more information, please follow other related articles on the PHP Chinese website!