导航:首页 > 文件处理 > php实现文件夹压缩

php实现文件夹压缩

发布时间:2024-10-22 06:41:55

‘壹’ php网页上打包文件生成压缩文件zip,并弹出下载

既然你只是想学习如何打包.


那我重点就回答你这一块,正好我刚刚用到;

$filename="./".date('YmdH').".zip";//最终生成的文件名(含路径)
//生成文件
$zip=newZipArchive();//使用本类,linux需开启zlib,windows需取消php_zip.dll前的注释
if($zip->open($filename,ZIPARCHIVE::CREATE)!==TRUE){
exit('无法打开文件,或者文件创建失败');
}

//$fileNameArr就是一个存储文件路径的数组比如array('/a/1.jpg,/a/2.jpg....');

foreach($fileNameArras$val){
$zip->addFile($val,basename($val));//第二个参数是放在压缩包中的文件名称,如果文件可能会有重复,就需要注意一下
}
$zip->close();//关闭

//下面是输出下载;
header("Cache-Control:max-age=0");
header("Content-Description:FileTransfer");
header('Content-disposition:attachment;filename='.basename($filename));//文件名
header("Content-Type:application/zip");//zip格式的
header("Content-Transfer-Encoding:binary");//告诉浏览器,这是二进制文件
header('Content-Length:'.filesize($filename));//告诉浏览器,文件大小
@readfile($filename);//输出文件;

‘贰’ php如何实现两个文件先压缩成一个压缩包然后下载

$filename="./".date('YmdH').".zip";//最终生成的文件名(含路径)
//生成文件
$zip=newZipArchive();//使用本类,linux需开启zlib,windows需取消php_zip.dll前的注释
if($zip->open($filename,ZIPARCHIVE::CREATE)!==TRUE){
exit('无法打开文件,或者文件创建失败');
}

//$fileNameArr就是一个存储文件路径的数组比如array('/a/1.jpg,/a/2.jpg....');

foreach($fileNameArras$val){
$zip->addFile($val,basename($val));//第二个参数是放在压缩包中的文件名称,如果文件可能会有重复,就需要注意一下
}
$zip->close();//关闭

//下面是输出下载;
header("Cache-Control:max-age=0");
header("Content-Description:FileTransfer");
header('Content-disposition:attachment;filename='.basename($filename));//文件名
header("Content-Type:application/zip");//zip格式的
header("Content-Transfer-Encoding:binary");//告诉浏览器,这是二进制文件
header('Content-Length:'.filesize($filename));//告诉浏览器,文件大小
@readfile($filename);//输出文件;

‘叁’ 求php压缩解压rar和zip类源码

不用写,rar算法是有专利权的

RAR压缩算法是RARLab的专利,其它软件要使用或自己实现RAR算法的实作,都是要向RARLab申请许可或交钱的

zip算法php有自带的函数
====>
需求
PHP 4
The bundled PHP 4 version requires » ZZIPlib, by Guido Draheim, version 0.10.6 or later

PHP 5.2.0 or later
This extension uses the functions of » zlib by Jean-loup Gailly and Mark Adler.
=====>
所以用RAR只有通过命令行调用已经安装的rar程序实现打包,效果是一样的.具体调用方法参考各自软件说明.winrar也能用命令行调用,请看http://ke..com/view/2345.htm

‘肆’ 求一个php数字压缩函数

PHP是有自带的压缩函数的
gzencode 默认使用ZLIB_ENCODING_GZIP编码,使用gzip压缩格式,实际上是使用defalte 算法压缩数据,然后加上文件头和adler32校验
gzdeflate 默认使用ZLIB_ENCODING_RAW编码方式,使用deflate数据压缩算法,实际上是先用 LZ77 压缩,然后用霍夫曼编码压缩
gzcompress ;默认使用ZLIB_ENCODING_DEFLATE编码,使用zlib压缩格式,实际上是用 deflate 压缩数据,然后加上 zlib 头和 CRC 校验

‘伍’ php 如何将多张图片压缩下载到本地 ,详细一点,有案例更好!!谢谢各位了

php的压缩方式
<?php

$zip = zip_open("/tmp/test2.zip");

if ($zip) {
while ($zip_entry = zip_read($zip)) {
echo "Name: " . zip_entry_name($zip_entry) . "\n";
echo "Actual Filesize: " . zip_entry_filesize($zip_entry) . "\n";
echo "Compressed Size: " . zip_entry_compressedsize($zip_entry) . "\n";
echo "Compression Method: " . zip_entry_compressionmethod($zip_entry) . "\n";

if (zip_entry_open($zip, $zip_entry, "r")) {
echo "File Contents:\n";
$buf = zip_entry_read($zip_entry, zip_entry_filesize($zip_entry));
echo "$buf\n";

zip_entry_close($zip_entry);
}
echo "\n";

}

zip_close($zip);

}
?>
用php下载多张图片
<?php
set_time_limit(0);//设置PHP超时时间
$aImgList = array_unique($aImgList );
foreach($aImgList as $lists) {
file_put_contents(basename($lists), file_get_contents($lists));
}
?>

‘陆’ php如何压缩一个文件夹里面所有的文件到zip文件里面

//函数:文件压缩 //压缩参数:需要压缩的文件或文件夹(文件可为数组),压缩后的zip文件名及存放路径,压缩类型1:文件夹2:文件,后续操作1:压缩后下载;2:存放在服务器上(默认为/@Upload下) //压缩文件夹示例:Tozip("./","../".date("d-H-i-s").".zip",1,2); //压缩文件示例: // $aaa=array("../1.txt","../2.txt"); // Tozip($aaa,"../2.zip",2);FunctionTozip($Path, $ZipFile, $Typ=1, $Todo=1){//IF(!is_writeable($Path)){Exit("文件夹不可写!");}$Path=Str_iReplace("\\","/",($Path));IF(Is_Null($Path) OrEmpty($Path) Or!IsSet($Path)){ReturnFalse;}IF(Is_Null($ZipFile) OrEmpty($ZipFile) Or!IsSet($ZipFile)){ReturnFalse;} Include_once("inc/Class_Zip.php");$zip=NewPHPZip;IF(SubStr($Path,-1,1)=="/"){$Path=SubStr($Path,0, StrLen($Path)-1);} OB_end_clean();Switch($Typ){Case"1":$zip-ZipDir($Path, $ZipFile, $Todo);Break;Case"2":$zip-ZipFile($Path,

阅读全文

与php实现文件夹压缩相关的资料

热点内容
b2c系统平台源码 浏览:804
android讲义pdf 浏览:731
微波技术与天线pdf 浏览:140
压缩机正反转线路图 浏览:423
程序员大学生涯 浏览:987
抖音上解压神器属于什么类目 浏览:817
php如何修改服务器的端口号 浏览:644
几何讲义pdf 浏览:93
利用python创建变量 浏览:735
期货入门基础知识pdf 浏览:191
比心app海滩币在哪里看 浏览:944
聚合直播app源码 浏览:484
打造云服务器需要多少钱 浏览:567
pythonsql变量赋值 浏览:492
电脑建立共享文件夹以后 浏览:474
一加8t如何加密文件 浏览:676
phpfpm是否启动 浏览:918
加密精灵隐藏了怎么恢复 浏览:168
程序员什么样的公司最好 浏览:67
制冷压缩机与设备实训 浏览:16