当前位置:首页 > PHP教程 > php应用 > 列表

PHP如何解压缩zip文件?(代码示例)

发布:smiling 来源: PHP粉丝网  添加日期:2022-07-12 09:12:56 浏览: 评论:0 

PHP解压缩zip文件

1、使用PHP执行文件解压缩zip文件,前提条件,一定要确定服务器开启了zip拓展

2、封装的方法如下:

实例代码:

  1. <?php 
  2.  
  3. /** 
  4.  
  5.  * 压缩文件 
  6.  
  7.  * @param array $files 待压缩文件 array('d:/test/1.txt','d:/test/2.jpg');【文件地址为绝对路径】 
  8.  
  9.  * @param string $filePath 输出文件路径 【绝对文件地址】 如 d:/test/new.zip 
  10.  
  11.  * @return string|bool 
  12.  
  13.  */ 
  14.  
  15. function zip($files, $filePath) { 
  16.  
  17.     //检查参数 
  18.  
  19.     if (emptyempty($files) || emptyempty($filePath)) { 
  20.  
  21.         return false; 
  22.  
  23.     } 
  24.  
  25.  
  26.  
  27.     //压缩文件 
  28.  
  29.     $zip = new ZipArchive(); 
  30.  
  31.     $zip->open($filePath, ZipArchive::CREATE); 
  32.  
  33.     foreach ($files as $key => $file) { 
  34.  
  35.         //检查文件是否存在 
  36.  
  37.         if (!file_exists($file)) { 
  38.  
  39.             return false; 
  40.  
  41.         } 
  42.  
  43.         $zip->addFile($file, basename($file)); 
  44.  
  45.     } 
  46.  
  47.     $zip->close(); 
  48.  
  49.  
  50.  
  51.     return true; 
  52.  
  53. } 
  54.  
  55.  
  56.  
  57. /** 
  58.  
  59.  * zip解压方法 
  60.  
  61.  * @param string $filePath 压缩包所在地址 【绝对文件地址】d:/test/123.zip 
  62.  
  63.  * @param string $path 解压路径 【绝对文件目录路径】d:/test 
  64.  
  65.  * @return bool 
  66.  
  67.  */ 
  68.  
  69. function unzip($filePath, $path) { 
  70.  
  71.     if (emptyempty($path) || emptyempty($filePath)) { 
  72.  
  73.         return false; 
  74.  
  75.     } 
  76.  
  77.  
  78.  
  79.     $zip = new ZipArchive(); 
  80.  
  81.  
  82.  
  83.     if ($zip->open($filePath) === true) { 
  84.  
  85.         $zip->extractTo($path); 
  86.  
  87.         $zip->close(); 
  88.  
  89.         return true; 
  90.  
  91.     } else { 
  92.  
  93.         return false; 
  94.  
  95.     } 
  96.  
  97. } 
  98.  
  99. ?>

Tags: PHP解压缩zip文件

分享到: