📖 项目介绍
ThinkAdmin 是一个基于 ThinkPHP 框架构建的后台管理开发框架,遵循 MIT 协议开源。当前核心依赖兼容 ThinkPHP 6 与 ThinkPHP 8,项目从 2014 年维护至今,围绕后台权限、菜单、配置、文件、任务、存储和插件化扩展提供基础能力,适合快速搭建可持续维护的管理后台。
🚀 核心特点
- 注解式权限管理: 通过控制器方法注释扫描功能节点,配合后台权限管理实现到操作按钮的权限控制
- 插件化架构: 深度定制 Composer 插件,实现专属插件生态管理架构,可将应用模块封装成独立插件包
- 异步任务处理: 兼容多平台动态创建 PHP 进程,可并列启动多个独立任务进程处理大数据或长时性任务,任务创建后立即返回编号,并通过后台监听进程调度执行和显示进度
- 标准化存储引擎: 支持本地存储、自建 Alist 存储、多种云存储,基于文件 HASH 实现文件秒传,节省服务器空间,支持 CDN 加速
- 现代化架构: 兼容 ThinkPHP 6/8,依托 Composer 包、ThinkPHP 服务和 ThinkAdmin 插件机制组织核心能力
- 快速开发: 封装常用 CRUD 操作及工具库,提供内置函数库,帮助快速实现数据增删改查
- 安全可靠: 提供表单令牌校验、文件上传安全封装和后台操作日志等基础安全能力
- 易于扩展: 遵循 Composer 标准管理依赖组件,可自由安装各种开源组件及插件生态程序
✨ 项目优点
🚀 开发效率优势
- 快速搭建: 提供后台管理基础模块,便于在标准环境中快速完成初始系统搭建
- 代码简化: 丰富的内置函数库,可在系统任意位置直接调用,无需引入类或命名空间,显著简化代码
- 快速开发: 封装常用 CRUD 操作、表单处理、数据状态更新等模块,快速实现数据增删改查
- 节点扫描: 根据控制器注释扫描功能节点,减少权限节点维护工作
- 工具丰富: 提供数据列表展示、表单处理、数据安全删除、通用数据保存更新等常用工具
🏗️ 技术架构优势
- 现代化框架: 当前核心包声明兼容 ThinkPHP 6/8,并保留原生 ThinkPHP 生态支持
- 生态兼容: 完全兼容原生 ThinkPHP 生态,显著降低编码复杂性和成本
- 插件化设计: 深度定制 Composer 插件,实现专属插件生态管理架构,模块可封装成独立插件包
- 标准规范: 遵循 Composer 标准管理依赖组件,支持灵活的扩展和定制
- 多应用支持: 特别注重多应用支持,方便开发者使用
🔐 安全与权限优势
- 精确权限控制: 基于简化的 RBAC 模型,权限控制精确到按钮级别,提供更大的灵活性
- 安全验证: 控制器可通过
_applyFormToken()启用表单令牌验证,渲染表单时写入_token_隐藏字段 - 文件安全: 文件上传封装支持后缀限制、文件名处理、常见可执行后缀拦截和本地图片基础检查
- 身份验证: 上传接口要求后台登录会话或有效上传令牌
- 数据安全: 删除逻辑会优先识别
deleted、is_deleted等字段做标记删除,否则执行物理删除
💾 存储与性能优势
- 多存储方案: 支持本地服务器存储、自建 Alist 存储,以及与七牛云、又拍云、阿里云、腾讯云等主流云服务商的对象存储服务无缝对接
- 文件秒传: 基于文件 HASH 实现文件秒传,节省服务器空间和带宽
- CDN 加速: 支持 CDN 加速,确保数据的高效传输和快速访问
- 高性能: 提供高性能的运行效率,内置函数经过优化,性能更好
- 异步处理: 异步任务处理机制,能够并行处理多个任务,提升系统处理能力
🌐 功能特性优势
- 多语言支持: 基于 ThinkPHP 语言包机制,内置英文、繁体语言包并支持数据字典扩展
- 后台界面: 后台基于 LayUI 与 RequireJS 构建,适合桌面端管理场景
- 实时反馈: 异步任务实时显示执行进度,提升用户体验
- 接口支持: 控制器默认输出标准 JSON 结构,并提供可配置的 CORS 响应头处理
- 配置灵活: 支持后台动态配置存储和运行参数,系统参数保存后会清理配置缓存并记录操作日志
📚 文档与生态优势
- 文档完善: 提供完善的开发文档,帮助开发者快速上手
- 插件生态: 丰富的插件生态系统,可自由安装各种开源组件及插件生态程序
- 社区支持: 活跃的社区支持,提供问题反馈和技术支持渠道
- 持续更新: 致力于不断推出新模块和辅助模块,以丰富和提升框架功能
- 持续维护: 项目长期维护,适合需要二次开发和插件扩展的后台项目
⚠️ 重要提示
免责声明: 在使用 ThinkAdmin 之前,请务必阅读《免责声明》并同意相关条款。
📋 版本历程
ThinkAdmin 历经 10 年的版本积累,从 2014 年维护更新至今,已发展成为成熟稳定的后台管理框架。ThinkAdmin v6 是基于 v1 到 v5 大版本深厚积累的重构之作。在历经数次重大调整后,当前实现以 ThinkPHP 6/8 兼容为基础,保留原生 ThinkPHP 生态支持,并将后台、微信、支付、商城等能力拆分为 Composer 插件包。
经过严格的实践与测试,v6.1 版本展现出卓越的稳定性和可靠性。为确保系统能够满足各种复杂场景的需求,我们持续优化和调整。目前,系统模块和微信模块均已达到高稳定水平。为保证用户的使用体验和数据安全,我们将系统管理(app/admin)和微信管理(app/wechat)作为核心模块,并以 MIT 协议进行发布。
💡 应用场景
ThinkAdmin 提供基础组件和 API 支持,助力快速开发各类 WEB 应用。框架免费提供基础功能,涵盖系统权限管理、存储配置、微信授权管理以及常用功能集成等,适合外包项目、企业后台和插件化业务模块开发。
我们致力于不断推出新模块和辅助模块,以丰富和提升 ThinkAdmin 的功能。请保持关注,期待后续的更新和发布!
🛠️ 技术栈
后端技术
- PHP 框架: ThinkPHP 6/8(核心包
topthink/framework声明为^6.0|^8.0) - 核心组件: ThinkLibrary - 封装了众多常用操作和多应用组件,完全兼容原有的 ThinkPHP 生态,显著降低了编码的复杂性和成本
- UI 框架: LayUI + RequireJs - 后台界面基于最新版本的 LayUI 前端框架和 RequireJs 组件加载方式,默认加载所有 LayUI 组件,开发者可直接使用
扩展组件
- 微信开发: WechatDeveloper 组件覆盖微信公众号、小程序、企业微信和微信商户支付等常用能力,并集成 QRcode 二维码生成工具
- 文件存储: 支持本地服务器存储、自建 Alist 存储,以及与七牛云、又拍云、阿里云和腾讯云等主流云服务商的对象存储服务无缝对接,并支持 CDN 加速
- 异步任务: 自带异步任务处理机制,能够并行处理多个任务;任务创建后立即返回编号,后台监听进程每轮至少约 1 秒扫描待执行任务,兼容 Windows 和 Linux 平台
💡 开发提示: 使用 ThinkAdmin 需要具备一定的开发技能,包括 ThinkPHP、jQuery、LayUI 和 RequireJs。使用 RequireJs 可以方便地加载和管理插件,互联网上有丰富的资源可供下载并进行二次扩展。
⚠️ 升级提示: 为确保未来的功能和安全升级,强烈建议不要占用或修改 app/admin 和 app/wechat 两个目录及代码。所有未来的功能和安全更新将通过 Composer 进行管理和发布。请确保您的项目遵循这一规则,以便顺利享受未来的升级服务。
演示地址
在线体验的账号和密码都是 admin
注意: 体验环境部分数据不能保存,需自行安装再测试!
开源代码
目前主库存放在 Gitee,Github 为镜像仓库,不要吝啬你的小星星哦!
问题反馈
推荐在 Gitee 的 Issue 提交反馈问题,回复响应速度最快。
- Gitee: https://gitee.com/zoujingli/ThinkAdmin/issues
- GitHub: https://github.com/zoujingli/ThinkAdmin/issues
技术支持
强烈推荐加入微信群,目前 QQ 群不常用,由热心群友维护。
由于近期加群发广告的人较多,已严重影响社区技术交流,因此在添加好友时会询问一些问题,我们会根据情况决定是否邀请入群,若有处置不周望请予以谅解! 添加好友后建议不要删除此微信账号。在使用我们的框架开发遇到问题可以直接咨询该微信,若有需要还可以提供有偿技术支持和定制服务。
- QQ 免费交流群 ① : 513350915
- QQ 免费交流群 ② : 866345568
- 微信免费交流群:加群需要验证基本信息,需要适当写明加群原因。

