thinkphp6: 在extend目錄下開發擴展類(php 8.1.1 / thinkphp v6.0.10LTS )


一,extend目錄的功能:

      extend目錄可以存放自己所開發的具備通用功能的類,
       vendor目錄存放的是通過composer下載的第三方庫
       注意與app目錄下的內容區分

說明:劉宏締的架構森林是一個專注架構的博客,

網站:https://blog.imgtouch.com
本文: https://blog.imgtouch.com/index.php/2023/05/29/thinkphp6-zai-extend-mu-lu-xia-kai-fa-kuo-zhan-lei-php-8-1/

         對應的源碼可以訪問這里獲取: https://github.com/liuhongdi/
         或: https://gitee.com/liuhongdi

說明:作者:劉宏締 郵箱: 371125307@qq.com

二,編寫php代碼:

1,controller/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 = [
            "/var/www/html/goodsimage/orig/61e7c3a0327ad.gif",
            "/var/www/html/goodsimage/orig/gsl.jpeg",
        ];
        $zipName = "/var/www/html/goodsimage/image.zip";
        $zip = new zip();
        $res =$zip->makeZip($pathArr,$zipName);
        //if ($res['code'])
        echo $res['code'];
        exit;
    }
}
2,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'=>'創建失敗'];
        }
    }
}

三,測試效果

1,訪問:
http://192.168.219.6:8000/article/zip
返回:
2,查看生成的zip包:

四,查看php和thinkphp的版本: 

php:
liuhongdi@lhdpc:/data/php/admapi$ php --version
PHP 8.1.1 (cli) (built: Dec 20 2021 16:12:16) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.1, Copyright (c) Zend Technologies
    with Zend OPcache v8.1.1, Copyright (c), by Zend Technologies 
thinkphp:
liuhongdi@lhdpc:/var/www/html$ cd /data/php/admapi/
liuhongdi@lhdpc:/data/php/admapi$ php think version
v6.0.10LTS 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM