thinkphp压缩文件

文章描述:

thinkphp6压缩文件类

extend目录

extend目录可以存放自己所开发的具备通用功能的类

vendor目录存放的是通过composer下载的第三方库

控制器

Article.php

<?php
declare (strict_types = 1);

namespace app\controller;

use app\BaseController;
use zip\zip;

class Article extends BaseController
{
    //生成zip文件
    public function zip() {
        $pathArr = [
            "C:/Users/Administrator/Desktop/1.jpg",
            "C:/Users/Administrator/Desktop/2.png",
        ];
        $zipName = "D:/phpstudy_pro/WWW/10006/tp6/public/image.zip";
        $zip = new zip();
        $res =$zip->makeZip($pathArr,$zipName);
        //if ($res['code'])
        echo $res['code'];
        exit;
    }
}

extend/zip/zip.php

<?php
namespace zip;

class zip {
    //打包一个zip文件
    public function makeZip($pathArr,$zipName) {
        $zip = new \ZipArchive();
        if($zip->open($zipName,\ZipArchive::CREATE|\ZipArchive::OVERWRITE)){
            foreach($pathArr as $file){
                if(!file_exists($file)){
                    continue;
                }
                //向压缩包中添加文件
                $zip->addFile($file,basename($file));
            }
            $zip->close();
            return ['code'=>0,'msg'=>"创建成功",'path'=>$zipName];
        }else{
            return ['code'=>1,'msg'=>'创建失败'];
        }
    }
}

 

访问

http://localhost:10006/article/zip

发布时间:2023/07/19

发表评论