# SwiftAdmin **Repository Path**: cenzhengwei/swiftadmin ## Basic Information - **Project Name**: SwiftAdmin - **Description**: [高性能PHP框架] 一键生成CURD、在线表单设计、基于PHP MySQL Layui 完美契合,自研Layui高颜值UI设计,适合开发CMS、CRM、OA等系统,是一款优秀的中后台极速开发解决方案。 - **Primary Language**: PHP - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: http://www.swiftadmin.net - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1580 - **Created**: 2025-11-24 - **Last Updated**: 2025-11-24 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README

基于PHP MySQL开发的轻量级高性能快速开发框架

thinkphp star swiftadmin

本框架已于2025年7月16日停止更新,请自行 fork 项目开发。

此去经年,望各位大佬 fork 如星火,各自璀璨。

### 软件介绍 `SWIFTADMIN` 是一款基于 webman + Layui 开发的 http 服务框架,提供了一个简单易用的(权限)后台管理系统, 拥有极简的封装扩展,特别适合中小企业和个人站长用于开发 web 站点或者 http 接口。支持路由、中间件、 多应用、 自定义进程、无需更改直接兼容现有 composer 项目组件等诸多特性。具有学习成本低、简单易用、超高性能、超高稳定性等特点。 为什么选择 SWIFTADMIN? 如果你熟悉ThinkPHP/Laravel/Yii2等框架,那么你可以很快上手 SWIFTADMIN,因为 SWIFTADMIN 是完全复用的这些框架的composer包。一样的代码写法,性能却可以提升10 倍以上。 运行在PHPCLI模式之下: 提供Workerman\Coroutine类,底层自动适配Swoole、Swow、Fiber协程、 提供协程相关的组件,例如 Context Channel Barrier Parallel WaitGroup Locker Pool等,底层自动适配Swoole、Swow、Fiber协程 注意事项:升级后不会自动使用协程,需要设置eventLoop才会开启协程,直接升级对业务没有影响。更多请详见下面常见问题:一定要看、一定要看、一定要看。重要的事情说三遍!!! ### 软件架构 | 依赖 | 版本 | 说明 | |-----|----------|:--------------------------------| | PHP | \>= 8.1 | 最低支持PHP8.1版 | | WebMan | \>= 2.1 | 基于workerman>5.1强悍核心 | | MySQL | \>= 5.7 | 最低 5.7,注意5.6版本无JSON字段,会报错 | | Layui | \>= 2.10 | 二次开发版,无法直接用官网替换,但提供map文件方便DEBUG | | layui-form-design | \>= 1.0 | 表单设计器,基于Sortable专为SAPHP框架开发 | | Admin Theme | \>= 1.x | 专为本框架开发、封装超多功能、支持多种菜单布局 | ### 软件功能 - [x] `用户管理` 用户是系统操作者,该功能主要完成系统用户配置。 - [x] `公司管理` 设置公司常用信息,前端标签调用 - [x] `部门管理` 配置系统组织机构(部门、小组),树结构展现支持数据权限。 - [x] `岗位管理` 配置系统用户所属担任职务。 - [x] `菜单管理` 配置系统菜单,操作权限,按钮、栏目等权限标识等。 - [x] `角色管理` 角色菜单权限分配、设置角色按机构进行数据范围权限划分。 - [x] `插件管理` 可开发定制属于自己的插件,可安装升级社区插件!!! - [x] `数据字典` 对系统中经常使用的一些较为固定的数据进行维护。 - [x] `操作日志` 用户后台操作日志,全局异常、SQL注入等记录 - [x] `API文档生成` 一键生成美观的API接口文档,支持自动扫描控制器和解析注释 ### 软件优势 - **开箱即用** 分钟快速安装,安装后即可进入开发无需复杂配置。 - **精美样式** 针对Layui2.x管理端开发独立ant Design精美样式。 - **方便快捷** 没用VUE框架,免编译,基于原生jQuery并封装统一入口。 - **菜单接入** 接口化菜单接入,可将应用轻松接入任意菜单模块中,无需后台配置。 - **表单构建** 基于Layui2.x开发的可视化表单设计器,可自定义表单控件,极大提高开发效率。 - **代码生成** 轻松一键CURD,自动生成代码,自动生成表单,自动生成接口,自动生成菜单,自动生成权限。 - **插件开发** 支持自定义插件开发,可定制自己的插件,并支持一键打包/升级/测试。 - **性能强悍** 底层WebMan-PHPCli常驻内存模式,性能是TP/Laravel的10倍以上。 ### 安装使用 1、首先将本框架直接clone到你本地,或者直接下载 ``` * git clone https://gitee.com/meystack/swiftadmin.git * 请使用宝塔面板或其他PHP集成环境 * 安装Apache或者NGINX服务器 * 安装PHP,版本 >= 8.1 * 安装PHP扩展fileinfo opcache redis imagemagick exif * 注意:Windows环境下PHP8.1你需要自行去https://pecl.php.net/package/redis/5.3.7/windows下载redisDLL扩展 * 开发环境下关闭禁用PHP函数exec、putenv、proc_open、proc_get_status、pcntl_signal[如果存在] * Linux环境下,请关闭禁用shell_exec pcntl_signal pcntl_fork pcntl_wait pcntl_alarm exec函数! ``` 2、Windows环境下启动开发服务 ``` 执行Windows.bat 进行完整开发,默认会监听app、config、plugin目录的PHP html的更改热加载 ``` 3、Linux环境下启动开发服务 ``` 执行命令:php start.php start # 启动开发服务 执行命令:php start.php stop # 停止开发服务 执行命令:php start.php restart # 重启开发服务 守护进程:php start.php start -d # 启动守护进程 一般为生产环境/修改文件后无法自动重载 注:当前默认只有app、config文件夹下文件内容被修改后才会自动重启,全局监听方案,请参考开发文档 ``` 4、打开浏览器输入网址,访问项目 ``` http://localhost:8787/index # 访问项目执行安装 ``` 5、安装完毕后,访问后台URL登录系统 ``` http://localhost:8787/manage # 登录后台/生产环境下可自行修改后台地址 ``` ### API 文档生成 框架提供了命令行工具,可以自动扫描 `app/api/controller` 目录下的所有 API 控制器,并生成美观的 HTML 接口文档。 #### 基本用法 ```bash # 生成默认 API 文档(输出到 public/api.html) php webman api:doc # 强制覆盖已存在的文档文件 php webman api:doc --force # 查看命令帮助 php webman api:doc --help ``` #### 命令参数 | 参数 | 简写 | 说明 | 默认值 | |------|------|------|--------| | `--url` | `-u` | API 基础 URL | `http://localhost` | | `--output` | `-o` | 输出文件名 | `api.html` | | `--title` | `-t` | 文档标题 | `SwiftAdmin API 文档` | | `--author` | `-a` | 文档作者 | `SwiftAdmin` | | `--force` | `-f` | 强制覆盖已存在的文件 | 无 | #### 使用示例 ```bash # 使用默认参数生成文档 php webman api:doc --force # 自定义 API 基础地址和文档标题 php webman api:doc --url="https://api.example.com" --title="我的API接口文档" --force # 自定义输出文件名和作者 php webman api:doc --output="myapi.html" --author="开发团队" --force # 完整参数示例 php webman api:doc --url="https://api.mysite.com" --output="api_doc.html" --title="项目API文档" --author="SwiftAdmin Team" --force ``` #### 文档特性 - ✅ **自动扫描**:自动扫描 `app/api/controller` 目录下的所有控制器 - ✅ **注释解析**:自动解析 PHPDoc 注释,提取接口说明、参数、返回值等信息 - ✅ **智能识别**:根据方法名自动识别请求方法(GET/POST/PUT/DELETE) - ✅ **参数提取**:自动提取方法参数的类型、必填性、默认值等信息 - ✅ **美观界面**:生成响应式 HTML 文档,包含目录导航和详细接口说明 - ✅ **目录导航**:自动生成文档目录,方便快速定位接口 #### 生成的文档位置 文档默认生成在 `public/api.html`,可以通过浏览器直接访问查看: ``` http://localhost:8787/api.html ``` #### 控制器注释示例 为了生成更完整的文档,建议在控制器和方法上添加详细的注释: ```php 然后使用命令:php -m 查看 * 已安装的PHP扩展 *,如果没有安装fileinfo opcache redis imagemagick exif,请安装
一定要注意的是:swiftadmin框架运行在webman核心上,并且运行的时候默认调用的是当前操作系统,默认的PHP环境变量的那个版本,
如果是windows环境,之前安装过PHP7.3,那么安装PHP8之后需要修改系统环境变量才可以执行; ``` 4、为什么最低需要PHP8.1及以上版本? ``` swiftadmin框架基于workerman>5.1+webmanv2.1上,所以最低需要PHP8.1及以上版本。并需要注意的是,当前框架的v2版本不与v1版本兼容 在Windows系统下,PHP8.1如果宝塔面板没有redis组件,请到http://pecl.php.net/package/redis/5.3.7/windows进行下载开启php.ini即可 ``` 5、升级后vendor里面的扩展包为什么变少了? ```angular2html 1、由于框架升级,vendor里面的扩展包变少了,但是不会影响系统运行
2、如果你的项目需要一些常规工具扩展包,请自行使用composer安装即可。 3、框架默认安装了一些常用的扩展包,比如支付/dumper/二维码/拼音库,是为了方便你们直接使用。 ``` ### 反馈BUG > 前往论坛反馈BUG 论坛反馈 : https://ask.swiftadmin.net/ > 加入反馈QQ群更快获得解答 一群 二群 三群 ### 项目演示 GOTO: http://demo.swiftadmin.net/manage
管理账号 admin admin888
测试账号 ceshi admin888 如正式运营环境请删除测试账号;
### ✔️ 特别鸣谢 感谢以下的项目,排名不分先后 jQuery:http://jquery.com Layui: https://www.layuion.com ThinkPHP:http://www.thinkphp.cn WebMan:http://www.workerman.net Jetbrains:https://www.jetbrains.com/ ### 版权信息 [`SwiftAdmin`] 遵循Apache2开源协议发布,并提供免费使用。 使用本框架不得用于开发违反国家有关政策的相关软件和应用,否则要付法律责任! 本软件依法享有国家著作权保护,故使用本软件者不得恶意篡改本源码,包括但不限于(植入木马病毒,违法应用)进行恶意传播。 不得对本软件进行恶意篡改或倒卖,不得对本软件进行二次包装后声称为自己的产品等,请遵守国家著作权法! 本项目著作权号 `2021SR0761953`, 其中包含的第三方源码和二进制文件之版权信息另行标注。 版权所有Copyright © 2020-2030 by swiftadmin (https://www.swiftadmin.net) All rights reserved。