TaoLer/app/common/lib/Zip.php

55 lines
1.2 KiB
PHP
Raw Normal View History

2021-12-30 16:36:48 +08:00
<?php
namespace app\common\lib;
class Zip
{
/**
* 压缩文件
* @param array $files 待压缩文件 array('d:/test/1.txt''d:/test/2.jpg');【文件地址为绝对路径】
* @param string $filePath 输出文件路径 【绝对文件地址】 d:/test/new.zip
* @return string|bool
*/
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
*/
function unzip($filePath, $path) {
if (empty($path) || empty($filePath)) {
return false;
}
$zip = new \ZipArchive();
if ($zip->open($filePath) === true) {
$zip->extractTo($path);
$zip->close();
return true;
} else {
return false;
}
}
}
?>