PHP执行文件的压缩和解压缩方法
- 1631
- PHP
- 0
- super_dodo
- 2021/09/07
最近的项目中需要用到PHP去处理文件的压缩和解压缩,网上找了一下方法大概如下。
<?php /** * PHP处理文件的压缩和解压缩 */ class FileZip { /** * 压缩文件 * @param array $files 待压缩文件 array('d:/test/1.txt','d:/test/2.jpg');【文件地址为绝对路径】 * @param string $filePath 输出文件路径 【绝对文件地址】 如 d:/test/new.zip * @return string|bool */ public function zip($files, $filePath) { //检查参数 if (empty($files) || empty($filePath)) { return false; } //压缩文件 $zip = new \ZipArchive(); $zip->open($filePath, \ZipArchive::CREATE); foreach ($files as $key => $file) { //检查文件是否存在 if (!file_exists($file)) { return false; } $zip->addFile($file, basename($file)); } $zip->close(); return true; } /** * zip解压方法 * @param string $filePath 压缩包所在地址 【绝对文件地址】d:/test/123.zip * @param string $path 解压路径 【绝对文件目录路径】d:/test * @return bool */ public function unzip($filePath, $path) { if (empty($path) || empty($filePath)) { return false; } $zip = new \ZipArchive(); if ($zip->open($filePath) === true) { $zip->extractTo($path); //提取全部文件 //$zip->extractTo('/my/destination/dir/', array('aa.gif', 'bb.php'));//提取部分文件 $zip->close(); return true; } else { return false; } } }
相关阅读
- 通过Google API客户端访问Google Play帐户报告PHP库
- PHP执行文件的压缩和解压缩方法
- 消息中间件MQ与RabbitMQ面试题
- 如何搭建一个拖垮公司的技术架构?
- Yii2中ElasticSearch的使用示例
热门文章
- 通过Google API客户端访问Google Play帐户报告PHP库
- PHP执行文件的压缩和解压缩方法
- 消息中间件MQ与RabbitMQ面试题
- 如何搭建一个拖垮公司的技术架构?
- Yii2中ElasticSearch的使用示例
最新文章
- 通过Google API客户端访问Google Play帐户报告PHP库
- PHP执行文件的压缩和解压缩方法
- 消息中间件MQ与RabbitMQ面试题
- 如何搭建一个拖垮公司的技术架构?
- Yii2中ElasticSearch的使用示例