PHP é o mais fácil de personalizar sua própria estrutura para definir constantes e gerar diretórios automaticamente (3)

1. A definição do módulo é adicionada à entrada da estrutura para realizar funções de vários módulos

index.php define o módulo

<?php
//定义当前请求模块
define("MODULE",'index');
require "./core/KJ.php";

Criar módulo de segundo plano admin.php

<?php
define("MODULE",'admin');
require "./core/KJ.php";

2. Defina constantes, defina o diretório raiz, o caminho do diretório principal da estrutura, etc.

     Entrada em execução da estrutura KJ.php

    

  public static function run(){
        //定义常量
        self::_set_const();
      
        echo '框架运行中';
    }

     //定义常量
    public static function _set_const(){
        //获取框架核心路径 都替换/以便兼容linux
        $path=str_replace('\\','//',__FILE__);
        //定义常量
        define("KJ_CORE",$path); //框架核心路径
        define('ROOT_PATH',dirname(dirname(KJ_CORE)));//项目根目录
        define('MODULE_PATH',ROOT_PATH.'/'.MODULE);//模块

        define('CONTROLLER',MODULE_PATH.'/controller');//定义控制器
        define('MODEL',MODULE_PATH.'/model');//定义模型
        define('VIEW',MODULE_PATH.'/view');//定义显示成
    }

3. Crie automaticamente o diretório do módulo

  public static function run(){
        //定义常量
        self::_set_const();
        //创建模块目录
        self::_mk_module();

        echo '框架运行中';
    }
  //自动创建模块目录
    public static function _mk_module(){
        $arr=[
            MODULE_PATH,
            CONTROLLER,
            MODEL,
            VIEW,
        ];
        foreach ($arr as $v){
            is_dir($v) || mkdir($v,0777,true);
        }
    }

4. Complete o código KJ.php

<?php

final class KJ{
    public static function run(){
        //定义常量
        self::_set_const();
        //创建模块目录
        self::_mk_module();

        echo '框架运行中';
    }
    //定义常量
    public static function _set_const(){
        //获取框架核心路径 都替换/以便兼容linux
        $path=str_replace('\\','//',__FILE__);
        //定义常量
        define("KJ_CORE",$path); //框架核心路径
        define('ROOT_PATH',dirname(dirname(KJ_CORE)));//项目根目录
        define('MODULE_PATH',ROOT_PATH.'/'.MODULE);//模块

        define('CONTROLLER',MODULE_PATH.'/controller');//定义控制器
        define('MODEL',MODULE_PATH.'/model');//定义模型
        define('VIEW',MODULE_PATH.'/view');//定义显示成
    }
    //自动创建模块目录
    public static function _mk_module(){
        $arr=[
            MODULE_PATH,
            CONTROLLER,
            MODEL,
            VIEW,
        ];
        foreach ($arr as $v){
            is_dir($v) || mkdir($v,0777,true);
        }
    }

}
KJ::run();

Acho que você gosta

Origin blog.csdn.net/weixin_39934453/article/details/132179293
Recomendado
Clasificación