一款基于 ThinkPHP + Uniapp 开源、轻量、高效的在线答题与网课学习系统
大家好,我是小皮
项目简介
Thinker 是一款开源的在线答题与网课学习系统,旨在为学习者和开发者提供一个轻量、高效且易于扩展的学习平台。它通过简洁的设计和强大的功能,满足学生备考、职场技能提升以及教育机构的需求。Thinker 采用现代化的技术栈构建,支持多平台部署,致力于推动教育公平和技术共享。

项目特色
轻量设计
-
无冗余代码:采用精简的架构,去除不必要的功能模块,确保系统高效运行。 -
低资源占用:即使在性能有限的服务器上也能轻松部署,适合多种运行环境。 -
快速部署:支持多种运行环境,无论是本地开发环境还是云服务器,都能轻松部署。
高效体验
-
智能题库管理:支持多学科、多题型的题库管理,题目按难度和知识点分类,方便用户筛选和练习。 -
实时反馈与解析:用户提交答案后,系统立即显示正确答案和详细解析,帮助用户及时巩固知识点。 -
错题回顾与强化:自动记录错题,支持错题集功能,用户可以随时回顾并强化薄弱知识点。 -
后台导入题库:支持通过 Excel 文件批量导入题库,方便管理员快速初始化和更新题库内容。 -
在线网课学习:支持在线视频课程播放、课程进度记录、笔记功能,提供完整的网课学习体验。

开源与灵活
-
完全开源:采用开源协议,开发者可以自由查看、修改和分发代码。 -
高度可定制:支持自定义题库、网课内容、界面风格和功能模块,开发者可以根据需求进行二次开发。
技术架构
前端
-
框架:基于 uni-app 和 Vue 2.0 开发,支持微信小程序、H5页面、APP等多种运行环境,实现一次开发、多端部署。 -
性能优化:利用 Vue 2.0 的响应式数据绑定和组件化开发,确保页面加载速度快、交互流畅。 -
视频播放:集成高效的视频播放组件,支持多种格式视频流,保证网课播放流畅稳定。
后端
-
语言:使用 PHP 7.4 开发,具备高性能和良好的兼容性。 -
数据库:支持 MySQL,满足系统数据存储需求。 -
搜索引擎:集成 Elasticsearch,提供全文搜索功能,提升题库与课程检索效率。 -
缓存:使用 Redis 缓存系统,优化数据读取速度,提升用户体验。
部署方式
-
项目地址
https://gitee.com/392223903/thinker
-
项目结构
thinker/├── .gitignore├── .gitee/├── .idea/├── api/ # 后端服务代码(PHP)├── app/ # 前端 Uni‑app 小程序源码├── db/ # 数据库脚本 / 建表配置├── LICENSE├── README.md└── README.en.md
-
Admin项目: admin目录参考 ThinkPHP 5 部署 1 个站点。复制
.example.env为.env并配置数据库信息。 后台访问地址请查看admin/public目录下的 php 文件。默认账号:admin,默认密码:123456。 -
API项目: api目录参考 ThinkPHP 6 部署 1 个站点。复制
.example.env为.env并配置数据库信息。 -
前端项目: app目录使用 uniapp 编译即可。修改
app/common/js/config.js中的apiHost为你的 API 域名。 -
数据库:导入 db/install.sql初始化。
感谢大家阅读,个人观点仅供参考,欢迎在评论区发表不同观点。
欢迎关注、分享、点赞、收藏、在看,我是微信公众号「PHP驿站」作者小皮。
夜雨聆风