php游戏后端(源码解读-神兽道游游戏系统)

php游戏后端(源码解读-神兽道游游戏系统)
源码解读-神兽道游游戏系统

一、项目概述

项目名称: 神兽道游游戏系统 技术框架: ThinkCMF X2.2.0 (基于 ThinkPHP 3.x) 开发语言: PHP 5.x 数据库: MySQL 服务器环境: Linux + Nginx + PHP


二、项目整体结构

2.1 目录结构

/├── application/           # 应用目录│   ├── Admin/            # 后台管理模块│   ├── Api/              # API 接口模块│   ├── Asset/            # 资源管理模块│   ├── Comment/          # 评论管理模块│   ├── Common/           # 公共模块(控制器、模型、配置)│   ├── Portal/           # 前台门户模块(核心业务)│   ├── User/             # 用户中心模块│   └── Install/          # 安装模块├── data/                  # 数据目录(配置、上传、缓存)├── plugins/               # 插件目录├── public/                # 公共资源目录├── simplewind/            # ThinkCMF 核心框架├── skin/                  # 皮肤模板(神兽主题)├── static/                # 静态资源(CSS、JS、图片)├── statics/               # 系统静态资源├── themes/                # 前台模板└── admin/themes/          # 后台模板

三、功能模块详解

3.1 核心业务模块(Portal)

位置: application/Portal/

主要控制器:

控制器

功能描述

IndexController.class.php

首页控制,房间入口,游戏界面加载

HomeController.class.php

会员中心,互助订单管理,提款排单

UserController.class.php

用户管理,推荐关系,升级系统,抽奖

AdminOrderController.class.php

订单管理后台

AdminUserController.class.php

用户管理后台

AdminPostController.class.php

内容管理后台

ArticleController.class.php

文章资讯

OrderController.class.php

订单处理逻辑

核心业务逻辑:

1. 游戏房间系统

  • 支持多种游戏类型(神兽、导游等)
  • 房间创建、加入、游戏记录
  • 房卡系统(制作房卡包、领取房卡)
  • 游戏规则配置(打份、购分、配牌等)

2. 互助排单系统(核心金融逻辑)

  • 提供帮助(排单):用户提交金额,等待匹配
  • 得到帮助(提款):从三个钱包提款(本息钱包、推荐奖钱包、管理奖钱包)
  • 订单匹配:系统自动匹配提供者和获取者
  • 打款确认:打款方上传打款凭证
  • 收款确认:收款方确认收款后交易完成
  • 超时处理:超时未打款/未收款自动封号

3. 推荐奖励系统

  • 直推奖励:推荐人获得推荐奖
  • 管理奖:1-7 代领导奖
  • 自动升级:根据直推人数和团队人数升级(C1-C5,初级经理,高级经理)
  • 激活码系统:新账号需要激活码激活

4. 等级系统

  • 会员等级:C1-C5,初级经理,高级经理
  • 升级条件:直推人数 + 团队活跃人数
  • 管理奖比例根据等级递增

5. 钱包系统

  • 本息钱包:排单本金和利息
  • 推荐奖钱包:推荐奖励
  • 管理奖钱包:领导奖和利息收入
  • 房卡余额:开房间消耗

3.2 后台管理模块(Admin)

位置: application/Admin/

主要控制器:

控制器

功能描述

MainController.class.php

后台首页,系统信息

IndexController.class.php

后台入口

BackupController.class.php

数据库备份

MenuController.class.php

后台菜单管理

NavController.class.php

导航管理

RbacController.class.php

角色权限管理

RouteController.class.php

路由管理

SettingController.class.php

系统设置

SlideController.class.php

幻灯片管理

UserController.class.php

php游戏后端(源码解读-神兽道游游戏系统)

用户管理

AdController.class.php

广告管理

LinkController.class.php

友情链接

MailerController.class.php

邮件配置

StorageController.class.php

存储配置

3.3 API 接口模块(Api)

位置: application/Api/

主要控制器:

控制器

功能描述

OauthController.class.php

微信登录授权

GuestbookController.class.php

留言板

CheckcodeController.class.php

验证码

MobileverifyController.class.php

手机验证

MapController.class.php

地图接口

PluginController.class.php

插件接口

3.4 用户中心模块(User)

位置: application/User/

主要功能:

  • 用户登录/注册
  • 个人资料编辑
  • 密码修改(登录密码、二级密码)
  • 推荐人列表
  • 激活码管理

3.5 评论模块(Comment)

位置: application/Comment/

主要功能:

  • 评论提交
  • 评论管理后台
  • 评论审核

3.6 资源模块(Asset)

位置: application/Asset/

主要控制器:

  • AssetController.class.php: 资源上传
  • DownloadController.class.php: 文件下载
  • UeditorController.class.php: 富文本编辑器上传

四、数据库表结构

4.1 核心业务表

表名

说明

主要字段

jz_user

用户表

id, user_login, mobile, password, fk(房卡), money(余额), token, openid

jz_users

扩展用户表

id, user_login, user_pass, score, coin, mobile

jz_room

游戏房间表

id, type, dk(端口), rule(规则), user(玩家), time, zt(状态), uid(房主)

jz_dj_room

房间对局记录

id, room, js(局数), djxx(对局信息)

jz_game

游戏类型表

id, name, zt, img, type(beast/daoyou)

jz_qun

用户群组

id, open(群主 id), uid(成员 id), zt(状态)

jz_fk_bag

房卡包

id, send_id, get_id, number, mis(码), add_time, end_time

jz_list

代理授权

id, agent, uid, time

4.2 互助订单表

表名

说明

主要字段

jz_provide_help

提供帮助(排单)

id, user_login, money, status, line_status

jz_get_help

得到帮助(提款)

id, user_login, money, wallet, status

jz_match

订单匹配表

id, provide_user, get_user, money, status, pay_time, confirm_time

jz_provide_order

打款凭证表

id, match_id, user_login, money, create_time

jz_order_guestbook

订单留言表

id, order_id, user_login, msg

4.3 系统配置表

表名

说明

主要字段

jz_options

系统配置

option_id, option_name, option_value

jz_menu

后台菜单

id, name, icon, url, pid

jz_slide

幻灯片

id, slide_cat_id, name, pic, url

jz_nav

导航

id, name, url

jz_ad

广告

id, name, content

jz_links

友情链接

id, name, url, icon

jz_route

路由规则

id, name, rule

jz_plugins

插件

id, name, status

4.4 权限表

表名

说明

主要字段

jz_auth_rule

权限规则

id, name, title, type

jz_role

角色表

id, name

jz_auth_access

角色权限

role_id, rule_id

jz_role_user

角色用户

role_id, user_id

4.5 其他表

表名

说明

jz_asset

资源文件

jz_comments

评论

jz_guestbook

留言板

jz_oauth_user

第三方用户

jz_posts

文章资讯

jz_terms

分类目录

jz_term_relationships

分类关系

jz_server

服务器/线路

jz_user_zdcard

天卡

jz_usermachine

用户机器

jz_all_record

所有记录

jz_common_action_log

操作日志


五、核心业务逻辑详解

5.1 游戏房间流程

1. 用户创建房间   → 选择游戏类型(/道游)   → 配置游戏规则(打份、购分、配牌等)   → 消耗房卡   → 生成房间 ID2. 用户加入房间   → 验证房主权限   → 验证玩家资格(群组成员)   → 加载游戏规则   → 进入游戏界面3. 游戏进行   → 记录每局结果   → 更新玩家积分   → 游戏结束后保存记录

5.2 互助排单流程

1. 提供帮助(排单)   → 检查排单时间(每日固定时间段)   → 检查排单数量(每日限制次数)   → 检查排单金额(首轮 6000,次轮 10000,第三轮 20000)   → 扣除排单币   → 创建排单记录2. 订单匹配   → 系统自动匹配提供者和获取者   → 创建匹配订单   → 通知双方3. 打款流程   → 打款方在规定时间内打款   → 上传打款凭证   → 订单状态变更为"已付款"4. 收款流程   → 收款方确认收款   → 支付推荐奖和管理奖   → 订单状态变更为"交易完成"5. 超时处理   → 超时未打款:扣除上级金额,封禁账号   → 超时未收款:自动确认,封禁账号

5.3 推荐奖励计算

推荐奖:直推会员交易金额的固定百分比管理奖(1-7 代):  - 第 1 代:推荐奖比例  - 第 2-7 代:递减比例升级条件:  C1: 直推 1 人 + 团队 1 人  C2: 直推 2 人 + 团队 5 人  C3: 直推 3 人 + 团队 10 人  C4: 直推 4 人 + 团队 15 人  C5: 直推 5 人 + 团队 20 人  初级经理:直推 5 人 + 团队 50 人  高级经理:直推 5 人 + 团队 100 人

5.4 钱包扣款逻辑

提款时:  1. 检查提款时间(每日固定时间段)  2. 检查提款次数(每日限制)  3. 检查提款金额(最小值、最大值、倍数)  4. 检查钱包余额  5. 扣除对应钱包金额  6. 创建提款记录利息计算:  - 2 小时内打款:3% 利息  - 4 小时内打款:2% 利息  - 6 小时内打款:1% 利息

六、核心代码文件

6.1 入口文件

  • /index.php - 网站入口,定义路径和常量

6.2 配置文件

  • /application/Common/Conf/config.php - 系统配置
  • /data/conf/db.php - 数据库配置
  • /data/conf/config.php - 运行时配置

6.3 核心控制器

  • /application/Portal/Controller/IndexController.class.php - 首页、房间入口
  • /application/Portal/Controller/HomeController.class.php - 会员中心、互助订单
  • /application/Portal/Controller/UserController.class.php - 用户管理、推荐系统
  • /application/Admin/Controller/MainController.class.php - 后台管理

6.4 核心模型

  • /application/Portal/Model/UserModel.class.php - 用户模型
  • /application/Common/Controller/HomebaseController.class.php - 前台基类
  • /application/Common/Controller/AdminbaseController.class.php - 后台基类

6.5 公共函数

  • /application/Common/Common/function.php - 公共函数库
  • /application/Common/Common/extend.php - 扩展函数

七、技术特点

7.1 框架特性

  • 基于 ThinkCMF X2.2.0 开发
  • ThinkPHP 3.x 核心
  • MVC 三层架构
  • 模板引擎:ThinkTemplate
  • 数据库:MySQL PDO

7.2 安全机制

  • 验证码验证
  • 二级密码保护
  • 超时自动封号
  • IP 限制
  • SQL 注入防护

7.3 性能优化

  • 页面压缩输出
  • 静态缓存
  • URL 路由
  • 多语言支持

八、主题皮肤

系统支持多套皮肤主题,位于 /skin/ 目录:

  • default - 默认主题
  • baihu - 白虎主题
  • qinglong - 青龙主题
  • zhuque - 朱雀主题
  • xuanwu - 玄武主题
  • qilin - 麒麟主题
  • test - 测试主题
  • dasheng - 大圣主题

九、第三方集成

9.1 微信集成

  • 微信登录授权
  • 微信 JS-SDK 分享
  • 配置文件中的微信 appid 和 key

9.2 短信服务

  • 手机验证码发送
  • 绑定手机验证

9.3 UCenter

  • 可选集成 UCenter 用户中心
  • 单点登录支持

十、系统配置项

10.1 排单配置 (bonus 表)

  • 排单金额范围
  • 每日排单次数限制
  • 打款时间限制
  • 收款时间限制
  • 推荐奖比例
  • 管理奖比例

10.2 提款配置 (extract 表)

  • 各钱包提款范围
  • 提款倍数
  • 提款周期限制

10.3 系统配置 (options 表)

  • 网站名称
  • SEO 设置
  • 邮件配置
  • CDN 配置

十一、开发规范

11.1 命名规范

  • 控制器:XxxController.class.php
  • 模型:XxxModel.class.php
  • 视图:小写 + 下划线

11.2 路由规则

  • G 参数:模块名
  • M 参数:控制器名
  • A 参数:方法名

11.3 模板路径

  • 前台:/themes/{模板名}/{控制器}/{方法}.html
  • 后台:/admin/themes/{模板名}/{控制器}/{方法}.html

十二、总结

这是一个基于 ThinkCMF 开发的游戏 + 互助金融复合型系统,主要特点:

  1. 游戏模块:支持多种在线棋牌游戏,房卡模式运营
  2. 互助模块:完整的 P2P 互助排单系统,包含订单匹配、打款确认、收款确认、超时处理等完整流程
  3. 分销系统:多层级推荐奖励,自动升级机制
  4. 钱包系统:多钱包管理,支持不同类型的资金流转
  5. 权限管理:完整的 RBAC 权限控制

文章版权声明:除非注明,否则均为边学边练网络文章,版权归原作者所有

相关阅读