七叶笔记 » PHP编程 » PHP文件怎么解压和压缩?(代码示例)

PHP文件怎么解压和压缩?(代码示例)

下面本篇文章就来给大家介绍如何使用PHP对文件进行压缩和解压操作,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下。

注:PHP压缩和解压文件需要有zip扩展—ZipArchive类

PHP ZipArchive类可用于压缩和解压缩。如果不存在,可能需要安装该类。

从PHP 5.3开始,此扩展是内置的。在此之前,Windows用户需要在php.ini中启用php_zip.dll才能使用其功能。

启用步骤:

1、打开php.ini文件,添加

extension=php_zip.dll

2、保存后,重启Apache或其他服务器。

PHP文件怎么解压?

/** * 解压缩 * @method unzip_file * @param  string     $zipName 压缩包名称 * @param  string     $dest    解压到指定目录 * @return boolean              true|false */function unzip_file(string $zipName,string $dest){  //检测要解压压缩包是否存在  if(!is_file($zipName)){    return false;  }  //检测目标路径是否存在  if(!is_dir($dest)){    mkdir($dest,0777,true);  }  $zip=new ZipArchive();  if($zip->open($zipName)){    $zip->extractTo($dest);    $zip->close();    return true;  }else{    return false;  }}

PHP如何压缩文件?

示例1:压缩单个文件

/** * 压缩单个文件 * @method zip_file * @param  string   $filename 文件名 * @return boolean             true|false */function zip_file(string $filename){  if(!is_file($filename)){    return false;  }  $zip=new ZipArchive();  $zipName=basename($filename).'.zip';  //打开指定压缩包,不存在则创建,存在则覆盖  if($zip->open($zipName,ZipArchive::CREATE|ZipArchive::OVERWRITE)){    //将文件添加到压缩包中    if($zip->addFile($filename)){      $zip->close();      @unlink($filename);      return true;    }else{      return false;    }  }else{    return false;  }}// var_dump(zip_file('22.txt'));// func_get_args// test1.zip

示例2:多文件压缩

/** * 多文件压缩 * @method zip_files * @param  string    $zipName 压缩包的名称,.zip结尾 * @param  string     $files   需要压缩文件名,可以是多个 * @return boolean             true|false */function zip_files(string $zipName,...$files){  //检测压缩包名称是否正确  $zipExt=strtolower(pathinfo($zipName,PATHINFO_EXTENSION));  if('zip'!==$zipExt){    return false;  }  $zip=new ZipArchive();  if($zip->open($zipName,ZipArchive::CREATE|ZipArchive::OVERWRITE)){    foreach($files as $file){      if(is_file($file)){        $zip->addFile($file);      }    }    $zip->close();    return true;  }else{    return false;  }}// var_dump(zip_files('test1.zip','22.txt'));// var_dump(zip_files('test2.zip','doUpload.php','downLoad.html','upload.html'));

相关视频教程推荐:《PHP教程》

以上就是PHP文件怎么解压和压缩?(代码示例)的详细内容,更多请关注求知技术网其它相关文章!

相关文章