把所有文件保存在$file_array的数组中,然后对其进行操作,然后压缩文件zip,进行下载。
$dir="文件路径"; //这里输入其它路径
//PHP遍历文件夹下所有文件
       $handle=opendir($dir."."); 
//        echo "文件:<br>";
        while (false !== ($file = readdir($handle)))
        {
           if ($file != "." && $file != "..") {
             //输出文件名
             $file_url.=$file."/";
           }
        }
        $file_array=explode("/", $file_url);
        closedir($handle);
//创建zip的压缩包
$zip = new ZipArchive();
        if ($zip->open(G_FLEXPAPER_TMP_FILES.'/123456/text123.zip', ZipArchive::OVERWRITE) === TRUE)
        {
            $zip->addFile(G_FLEXPAPER_TMP_FILES.'123456/a.doc');//假设加入的文件名是p_w_picpath.txt,在当前路径下
            if(isset($file_array)){
                for ($i=0;$i<count($file_array);$i++){
                    $zip->addFromString(G_FLEXPAPER_TMP_FILES.'/123456/'.$file_array[$i], 'file content goes here');
                }
            }
            $zip->close();
        }
//下载  注意在JS里输出url,window.open(url);
- $file_name = "xxx.rar";        
- $file_dir = "./up/";           
-    
- if (! file_exists ( $file_dir . $file_name )) {     
-     echo "文件找不到";     
-     exit ();     
- } else {     
-        
-     $file = fopen ( $file_dir . $file_name, "r" );     
-        
-     Header ( "Content-type: application/octet-stream" );     
-     Header ( "Accept-Ranges: bytes" );     
-     Header ( "Accept-Length: " . filesize ( $file_dir . $file_name ) );     
-     Header ( "Content-Disposition: p_w_upload; filename=" . $file_name );     
-        
-        
-     echo fread ( $file, filesize ( $file_dir . $file_name ) );     
-     fclose ( $file );     
-     exit ();     
- }