php实现网站文件批量压缩下载功能

yipeiwu_com6年前PHP代码库

利用php实现将文件批量压缩打包下载,这个过程中将使用到 ZipArchive 这个类,注意使用该类之前,linux需开启zlib,windows需取消php_zip.dll前的注释。下面直接给出一个简单的将文件压缩为 zip 格式的示例。具体用法请查询php相关文档。

<?php 
$filename='test.zip'; //最终生成的文件名(含路径) 
if(file_exists($filename)){ 
  unlink($filename); 
} 
//重新生成文件 
$zip=new ZipArchive(); 
if($zip->open($filename,ZIPARCHIVE::CREATE)!==TRUE){ 
  exit('无法打开文件,或者文件创建失败'); 
} 
$datalist=array('try.php','zip_class.php'); 
foreach($datalist as $val){ 
  if(file_exists($val)){ 
    $zip->addFile($val); 
  } 
} 
$zip->close();//关闭 
if(!file_exists($filename)){ 
  exit('无法找到文件'); //即使创建,仍有可能失败 
} 

以上就是php实现将文件批量压缩打包下载的全部内容,我们也还可以利用php调用linux系统的shell脚本来实现这个功能,这是一个思路,希望大家可以研究研究。

相关文章

php实现按照权重随机排序数据的方法

本文实例讲述了php实现按照权重随机排序数据的方法。分享给大家供大家参考。 具体实现方法如下: 复制代码 代码如下: <?php   /** ...

PHP中exec与system用法区别分析

本文实例讲述了PHP中exec与system用法区别,分享给大家供大家参考之用。具体方法如下: 一般来说,在PHP中调用外部命令,可以用exec及system来实现: system()...

php文件操作相关类实例

本文实例讲述了php文件操作相关类。分享给大家供大家参考。具体如下: <?php class file_dir { function check_exist($...

php echo()和print()、require()和include()函数区别说明

1.echo和print的区别 PHP中echo和print的功能基本相同(输出),但是两者之间还是有细微差别的。echo输出后没有返回值,但print有返回值,当其执行失败时返回fla...

PHP获取文件夹内文件数的方法

本文实例讲述了PHP获取文件夹内文件数的方法。分享给大家供大家参考。具体实现方法如下: function getfilecounts($ff){ $dir = './'.$ff;...