madong 5.x 是一个基于 Webman 的高性能企业级开发框架,以"每个细节都不一样"为设计理念,专注于提供生产级的解决方案。
| 技术 | 版本 | 用途 |
|---|---|---|
| PHP | 8.2+ | 核心编程语言 |
| Webman | 2.2 | 高性能HTTP服务框架 |
| Workerman | 5.1 | 底层异步网络库 |
| JWT | - | 认证系统 |
| Redis | - | 缓存与Token黑名单 |
| Illuminate\Database | ^11.33 | ORM框架 |
madong/ # 项目根目录
├── backend/ # 后端目录(当前目录)
│ ├── app/ # 应用目录
│ │ ├── adminapi/ # 管理后台 API(控制器、验证器等)
│ │ ├── api/ # 前台 API(控制器、验证器等)
│ │ ├── bootstrap/ # 启动引导文件
│ │ ├── command/ # 命令行工具
│ │ ├── dao/ # 数据访问层
│ │ ├── enum/ # 枚举类
│ │ ├── event/ # 事件定义
│ │ ├── install/ # 安装脚本
│ │ ├── listener/ # 事件监听器
│ │ ├── middleware/ # 中间件
│ │ ├── model/ # 模型
│ │ ├── process/ # 自定义进程
│ │ ├── queue/ # 队列任务
│ │ ├── schema/ # 数据结构定义
│ │ ├── scope/ # 作用域定义
│ │ ├── service/ # 业务服务层
│ │ └── functions.php # 全局函数
│ ├── config/ # 配置文件
│ │ ├── plugin/ # 插件配置
│ │ ├── route/ # 路由配置
│ │ └── *.php # 各类配置文件
│ ├── core/ # 核心框架
│ │ ├── base/ # 基础类
│ │ ├── cache/ # 缓存组件
│ │ ├── captcha/ # 验证码组件
│ │ ├── db/ # 数据库组件
│ │ ├── email/ # 邮件服务
│ │ ├── excel/ # Excel 导入导出
│ │ ├── exception/ # 异常处理
│ │ ├── generator/ # 代码生成器
│ │ ├── interface/ # 接口定义
│ │ ├── jwt/ # JWT 认证
│ │ ├── logger/ # 日志组件
│ │ ├── notify/ # 通知服务
│ │ ├── plugin/ # 插件核心
│ │ ├── route/ # 路由组件
│ │ ├── scheduler/ # 定时任务
│ │ ├── sms/ # 短信服务
│ │ ├── tool/ # 工具类
│ │ ├── trait/ # 特性类
│ │ ├── upload/ # 文件上传
│ │ ├── uuid/ # UUID 生成
│ │ └── functions.php # 核心函数
│ ├── plugin/ # 插件目录
│ ├── public/ # 静态资源
│ ├── resource/ # 资源文件
│ ├── runtime/ # 运行时文件
│ ├── support/ # 第三方支持库
│ ├── tests/ # 单元测试
│ ├── vendor/ # Composer 依赖包
│ ├── composer.json # Composer 配置
│ ├── composer.lock # 依赖锁定文件
│ ├── phinx.php # 数据库迁移配置
│ └── README.md # 项目说明文档
│
└── frontend/ # 前端目录(需单独下载)
├── admin/ # 管理后台前端
└── web/ # 前台前端
分层架构:
模块化设计:
多端适配:
/adminapi和/apiadmin/api/web/mobile/minimadong 5.x 的JWT实现超越了基础的"签发-验签"模式,提供了生产级的完整解决方案:
single(全局单点)、client(同端单点)、multi(多端同时在线)核心代码示例:
// 踢掉指定设备
$jwt->kickoutByJti($jti);
// 踢掉某用户所有会话
$jwt->logoutAll($userId, $clientType);
// 查看当前在线设备列表
$jwt->getSessions($userId, $clientType);
madong 5.x 实现了三层权限控制:
权限注解示例:
#[Permission(code: 'system:user:list')]
public function index(): Response { ... }
#[AllowAnonymous(reason: '公开接口')]
public function publicInfo(): Response { ... }
madong 5.x 的插件系统实现了真正的热插拔:
代码生成器覆盖完整研发链路:
基于Webman的路由系统,实现了自动注册机制:
Route::group('/adminapi', function () {
Swagger::create()->registerRoute([...]);
});
通过扫描控制器的OpenAPI Attribute,自动生成路由和API文档,增删接口无需修改路由文件。
继承Crud基类,内置完整的CRUD操作:
index:列表查询,支持多种输出格式show:详情查询store:创建update:更新destroy:删除batchDelete:批量删除select:下拉选择支持tree/table_tree/normal多种输出格式,无需重复实现。
数据权限通过中间件和查询构建器实现:
WHERE 1=0,确保接口行为一致插件安装过程使用SSE(Server-Sent Events)实时推送进度:
| 特性 | madong 5.x (Webman) | 传统PHP框架 (如Laravel) |
|---|---|---|
| 运行模式 | 常驻内存 | 每次请求初始化 |
| 性能 | 高(无初始化开销) | 中等(每次请求初始化) |
| 并发处理 | 高(支持多进程) | 中等(依赖PHP-FPM) |
| 模块化 | 插件热插拔 | 目录分层 |
| 权限系统 | 三层权限控制 | 基础权限控制 |
| 代码生成 | 覆盖完整链路 | 基础代码生成 |






madong 5.x 代表了PHP后台开发的一个重要方向:
https://gitee.com/motion-code/madong-admin 【5.x-alpha】
composer install
在线安装
http://your-domain.com/install

命令安装
//在git环境下一键下载前端资源(前台,后台)
php webman madong-download:frontend
//命令安装输入对应的账号密码
php webman install:madong
madong 5.x 是一套完整的企业级应用开发解决方案,适合构建各种规模的Web应用。其对细节的关注和对技术的深入理解,使其在众多PHP框架中脱颖而出,为PHP后台开发树立了新的标杆。

终于等到了~~
可更新了~~
saas版的有计划么
会出
独立版本细节完善直接copy 添加一个管理前端跟后端中间件就可以了
感谢分享
板正,👍
这评价太有分量啦,压力山大。