Skip to content

项目介绍

Dux PHP Admin 是一个现代化的 PHP 后台管理系统解决方案,面向开发者提供高效的企业级应用开发框架。基于 DuxLite v2 框架和 DVHA 前端技术栈构建,旨在为开发者提供快速构建企业级管理系统的完整解决方案。

技术架构

后端技术栈

  • PHP 8.2+:采用现代 PHP 语法特性和强类型支持
  • DuxLite v2:基于 PSR 标准的轻量级高性能框架
  • Laravel Eloquent ORM:强大的数据库 ORM 支持
  • Symfony Cache:高性能缓存组件
  • FrankenPHP:现代化 PHP 应用服务器
  • MySQL/PostgreSQL/SQLite:多数据库支持

前端技术栈

  • Vue 3:渐进式 JavaScript 框架
  • TypeScript:类型安全的 JavaScript
  • Naive UI:现代化企业级 UI 组件库
  • Vite:下一代前端构建工具
  • DVHA:零编译管理界面解决方案
  • UnoCSS:原子化 CSS 引擎

核心架构特性

🚀 零编译前端开发

  • 运行时编译:DVHA-Pro 技术实现前端零编译开发
  • 即时预览:Vue 文件修改后刷新页面即可看到效果
  • 无构建依赖:无需 webpack、rollup 等复杂构建工具链
  • 开发体验:类似传统 PHP 开发的简单直观体验

⚡ 模块化架构设计

  • PSR 标准:遵循 PHP-FIG 标准规范
  • 注解驱动:基于 PHP 8 Attributes 的声明式开发
  • 依赖注入:完整的 IoC 容器支持
  • 中间件系统:灵活的请求处理中间件
  • 事件系统:解耦的事件驱动架构

🔧 自动化代码生成

  • RESTful API:基于注解自动生成标准化 API
  • OpenAPI 文档:自动生成 Swagger 接口文档
  • 数据库迁移:#[AutoMigrate] 注解自动创建数据表
  • 菜单权限:自动生成管理菜单和权限节点

开发特性

高效开发体验

一体化开发模式

php
// 控制器示例
#[Resource(app: 'admin', route: '/system/user', name: 'system.user')]
class User extends Resources
{
    protected string $model = SystemUser::class;
    
    public function queryMany(Builder $query, ServerRequestInterface $request, array $args): void
    {
        // 查询逻辑
    }
}

数据同步管理

php
// 数据模型自动迁移
#[AutoMigrate]
class Article extends Model
{
    protected $fillable = ['title', 'content', 'status'];
    
    // 自动同步数据库结构,方便管理字段
}

强大的扩展能力

插件化架构

  • 模块隔离:清晰的模块边界和接口定义
  • 热插拔:支持模块的动态加载和卸载
  • 版本管理:模块版本控制和依赖管理
  • 配置隔离:模块独立配置和资源管理

API 优先设计

  • 统一接口:标准化的 RESTful API 设计
  • 版本控制:API 版本管理和向后兼容
  • 文档自动生成:基于注解的 OpenAPI 文档
  • 测试友好:内置 API 测试工具

性能优化

高性能架构

  • FrankenPHP 服务器:现代化 PHP 应用服务器
  • 连接池:数据库连接池和资源复用
  • 查询优化:Eloquent ORM 查询优化
  • 缓存策略:多层缓存和缓存预热

前端性能

  • 按需加载:组件和路由懒加载
  • 资源优化:CSS/JS 自动压缩和合并
  • CDN 支持:静态资源 CDN 加速
  • 浏览器缓存:合理的缓存策略配置

开发优势

学习成本低

  • 熟悉的语法:基于 PHP 和 Vue 的主流技术栈
  • 传统开发体验:类似传统 PHP 开发的目录结构
  • 渐进式学习:可以从简单功能开始逐步深入
  • 丰富文档:完整的开发文档和示例代码

开发效率高

  • 脚手架工具:快速生成项目骨架和模块代码
  • 代码生成器:自动生成 CRUD 代码和 API 接口
  • 热重载:前端代码修改实时生效
  • 调试友好:完整的错误提示和调试信息

可维护性强

  • 代码规范:PSR 标准和最佳实践
  • 类型安全:TypeScript 前端和 PHP 强类型
  • 测试覆盖:单元测试和集成测试支持
  • 文档完善:代码注释和 API 文档自动生成

适用场景

企业级应用

  • ERP 系统:企业资源计划管理
  • CRM 系统:客户关系管理
  • OA 系统:办公自动化系统
  • HRM 系统:人力资源管理

内容管理

  • CMS 平台:内容管理系统
  • 新闻发布:新闻和文章管理
  • 电商后台:商品和订单管理
  • 媒体管理:图片和视频管理

SaaS 平台

  • 多租户系统:基于部门的数据隔离
  • API 服务:微服务架构支持
  • 第三方集成:丰富的集成接口
  • 数据分析:业务数据统计分析

项目结构

dux-php-admin/
├── app/                    # 应用模块目录
│   ├── System/            # 系统核心模块
│   │   ├── Admin/         # 管理后台控制器
│   │   ├── Models/        # 数据模型
│   │   ├── Service/       # 业务服务层
│   │   └── Views/         # 视图组件
│   ├── Member/            # 会员模块(可选)
│   ├── Data/              # 数据管理模块
│   └── Web/               # Web 前台模块
├── config/                # 配置文件目录
│   ├── app.toml           # 应用配置
│   ├── database.toml      # 数据库配置
│   ├── cache.toml         # 缓存配置
│   └── use.toml           # 模块加载配置
├── data/                  # 运行时数据目录
│   ├── cache/            # 缓存文件
│   ├── logs/             # 日志文件
│   └── docs/             # API 文档
├── public/                # Web 根目录
│   ├── index.php         # 应用入口文件
│   ├── uploads/          # 上传文件目录
│   └── static/           # 静态资源
├── web/                   # 前端源码
│   ├── App.vue           # 主应用组件
│   ├── config.ts         # 前端配置
│   ├── main.ts           # 入口文件
│   └── dist/             # 编译产物
├── vendor/               # Composer 依赖
├── composer.json         # 后端依赖配置
├── package.json          # 前端依赖配置
├── dux                   # CLI 命令行工具
└── README.md             # 项目说明

命令行工具

数据库管理

bash
# 同步数据库结构
php dux db:sync

# 重置数据库
php dux db:reset

# 数据库迁移
php dux db:migrate

开发服务器

bash
# 启动开发服务器
php dux serve

# 后台运行服务器
php dux serve -d

# 指定端口运行
php dux serve --port=9501

代码生成

bash
# 生成模块
php dux make:module ModuleName

# 生成控制器
php dux make:controller ControllerName

# 生成模型
php dux make:model ModelName

技术优势

现代化技术栈

  • PHP 8+:充分利用现代 PHP 特性
  • Vue 3:Composition API 和 TypeScript 支持
  • 微服务友好:支持容器化部署和微服务架构
  • 云原生:支持 Docker 和 Kubernetes

安全性保障

  • 身份认证:JWT Token 和 Session 双重支持
  • 权限控制:基于 RBAC 的细粒度权限管理
  • 数据保护:SQL 注入、XSS 攻击防护
  • 安全审计:完整的操作日志和安全监控

扩展性设计

  • 水平扩展:支持集群部署和负载均衡
  • 插件生态:丰富的第三方插件支持
  • API 开放:标准化的扩展接口
  • 国际化:完整的多语言支持框架

生态系统

核心项目

扩展插件

  • 支付插件:支付宝、微信支付集成
  • 短信插件:阿里云、腾讯云短信服务
  • 存储插件:阿里云 OSS、腾讯云 COS
  • 推送插件:消息推送和通知服务

开始使用

环境要求

  • PHP:8.2 或更高版本
  • 数据库:MySQL 5.7+ / PostgreSQL 10+ / SQLite 3+
  • Web 服务器:Nginx / Apache / FrankenPHP
  • Node.js:16+ (开发环境)

快速开始

bash
# 使用 Composer 创建项目
composer create-project duxweb/dux-php-admin myproject

# 进入项目目录
cd myproject

# 安装前端依赖
npm install

# 配置数据库
cp config/database.example.toml config/database.toml

# 同步数据库
php dux db:sync

# 启动开发服务器
php dux serve

下一步

通过 Dux PHP Admin,开发者可以专注于业务逻辑的实现,而无需在基础架构和通用功能上花费过多时间,大幅提升企业级应用的开发效率。