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

用户管理

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

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

系统配置

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 权限控制

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

相关阅读