PHP自己的框架2.0版本目录结构和命名空间自动加载类(重构篇一)

目录

1、目录结构演示效果

2、搭建目录结构,以及入口public->index.php

3、引入core下面core->base.php

4、自动加载实现core->fm->autoload.php

5、框架运行文件core->fm->core.php

6、最终运行index.php结果


1、目录结构演示效果

2、搭建目录结构,以及入口public->index.php

php 复制代码
<?php
namespace fm;
// 加载基础文件
require __DIR__ . '/../core/base.php';
core::run();

3、引入core下面core->base.php

php 复制代码
<?php
namespace fm;
require __DIR__.'/fm/autoload.php';

autoload::register();

4、自动加载实现core->fm->autoload.php

php 复制代码
<?php
namespace fm;
class autoload{
    public static  function register(){
        spl_autoload_register(array(__CLASS__,'_autoload'));
    }
    public static function _autoload($className){
        $path=dirname(dirname(str_replace('\\','//',__FILE__)));
        $file=$path.'/'.$className.'.php';
        if(is_file($file))  include $file;
    }

}

5、框架运行文件core->fm->core.php

php 复制代码
<?php
namespace fm;
class core{
    public static function run(){
      echo '框架运行中';
    }

}

6、最终运行index.php结果

localhost/frame/public/index.php

相关推荐
闪电悠米几秒前
黑马点评-Redis ZSet-实现关注 Feed 流
服务器·网络·数据库·redis·缓存·junit·lua
天疆说3 分钟前
在 Ubuntu 24.04 上安装 MATLAB R2021b
数据库·ubuntu·matlab
码云数智-大飞4 分钟前
Go Channel 详解:并发通信的正确姿势
前端·数据库·git
AI焦点4 分钟前
2026年AI大模型中转横评实测:跨越价格陷阱,重构生产级聚合平台的评估基准
人工智能·重构
yyuuuzz7 分钟前
2026游戏云服务器推荐的技术判断思路
运维·服务器·开发语言·网络·人工智能·游戏·php
Volunteer Technology19 分钟前
Flink Table API与SQL(二)
大数据·数据库·flink
杨云龙UP22 分钟前
Spotlight 接入 Oracle 数据库监控操作指南 2026-06-16
数据库·oracle·性能监控·预警·阈值·spotlight·瓶颈分析
正在走向自律24 分钟前
KingbaseES MySQL模式深度解析,从语法兼容到迁移的全栈指南
数据库·数据库架构·kingbasees·电科金仓
叫我:松哥29 分钟前
基于Python flask的中学可控智能命题系统设计与实现,整合遗传算法、DeepSeek 大模型及数据库技术构建一体化应用
数据库·人工智能·python·算法·机器学习·flask·遗传算法
阿维的博客日记29 分钟前
Hippo4j 线程池监控接入方法
数据库·hippo4j