MemKey_User.php 7.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288
  1. <?php
  2. namespace loyalsoft;
  3. /**
  4. * 玩家相关字段
  5. * 组织方案: 前缀 user-uid + 字段名称 -filedname
  6. * 分隔符: -
  7. * @version
  8. * 1.0.0 Created at 2017-4-6. by --gwang
  9. * @author gwang (mail@wanggangzero.cn)
  10. * @copyright ? 2017-4-6, SJZ LoyalSoft Corporation & gwang. All rights reserved.
  11. */
  12. class MemKey_User
  13. {
  14. //
  15. // <editor-fold defaultstate="collapsed" desc=" 辅助方法 ">
  16. //
  17. /**
  18. * @return bool 是否使用短名称
  19. */
  20. private static function bUseShort()
  21. {
  22. // return true; # 全部启用
  23. return defined('GAME_ONLINE') and GAME_ONLINE;
  24. }
  25. /**
  26. * key前缀
  27. * @param int $zoneid 分区id
  28. * @param string $uid
  29. * @return string
  30. */
  31. private static function Key_($zoneid, $uid)
  32. {
  33. return self::bUseShort() ? 'u-' . $uid . '-' . $zoneid : 'user-' . $uid . '-zone' . $zoneid;
  34. }
  35. // </editor-fold>
  36. //
  37. // <editor-fold defaultstate="collapsed" desc=" Union 玩家公共(不分区)数据 ">
  38. /**
  39. * [共享]获取玩家的分区记录(玩过哪些分区)
  40. * @param int $zoneid 分区id
  41. * @param string $uid
  42. * @return string json []
  43. */
  44. public static function Union_PlayedZoneInfo_normal($uid)
  45. {
  46. return self::bUseShort() ? 'u-' . $uid . '-z' : 'user-' . $uid . '-zoneinfo';
  47. }
  48. /**
  49. * [共享]玩家各区公共数据
  50. * @param string $uid
  51. * @return string json
  52. */
  53. public static function Union_PublicState_normal($uid)
  54. {
  55. return self::bUseShort() ? 'u-' . $uid . '-p' : 'user-' . $uid . '-public';
  56. }
  57. // </editor-fold>
  58. //
  59. /**
  60. * 玩家信息
  61. * @param int $zoneid 分区id
  62. * @param string $uid
  63. * @return string
  64. */
  65. public static function Info($zoneid, $uid)
  66. {
  67. return self::Key_($zoneid, $uid) . (self::bUseShort() ? '-g' : '-gameinfo');
  68. }
  69. /**
  70. * 玩家交互信息
  71. * @param int $zoneid 分区id
  72. * @param string $uid
  73. * @return string
  74. */
  75. public static function Interact($zoneid, $uid)
  76. {
  77. return self::Key_($zoneid, $uid) . (self::bUseShort() ? '-i' : '-interact');
  78. }
  79. /**
  80. * 玩家证书
  81. * @param int $zoneid 分区id
  82. * @param string $uid
  83. * @return string
  84. */
  85. public static function Sig($zoneid, $uid)
  86. {
  87. return self::Key_($zoneid, $uid) . (self::bUseShort() ? '-sig' : '-sig');
  88. }
  89. // <editor-fold defaultstate="collapsed" desc=" Mail 邮件 ">
  90. /**
  91. * 玩家邮件 - 当前的maxid
  92. * @param int $zoneid
  93. * @param strng $uid
  94. * @return string
  95. */
  96. public static function Mail_CurId_int($zoneid, $uid)
  97. {
  98. return self::Key_($zoneid, $uid) . (self::bUseShort() ? '-m-ci' : '-mail-curid');
  99. }
  100. /**
  101. * 玩家邮件 - 已领取到的系统邮件id集合
  102. * @param int $zoneid
  103. * @param strng $uid
  104. * @return string
  105. */
  106. public static function Mail_SysRecord_set($zoneid, $uid)
  107. {
  108. return self::Key_($zoneid, $uid) . (self::bUseShort() ? '-m-s' : '-mail-sysrecord');
  109. }
  110. /**
  111. * 玩家邮件 - 邮件列表
  112. * @param int $zoneid
  113. * @param strng $uid
  114. * @return string
  115. */
  116. public static function Mail_Queue_hash($zoneid, $uid)
  117. {
  118. return self::Key_($zoneid, $uid) . (self::bUseShort() ? '-m-q' : '-mail-queue');
  119. }
  120. // </editor-fold>
  121. //
  122. // <editor-fold defaultstate="collapsed" desc=" Friend 好友数据 ">
  123. /**
  124. * 玩家好友列表
  125. * @param int $zoneid 分区id
  126. * @param string $uid
  127. * @return string
  128. */
  129. public static function FriendsList_set($zoneid, $uid)
  130. {
  131. return self::Key_($zoneid, $uid) . (self::bUseShort() ? '-f-l' : '-friends-list');
  132. }
  133. /**
  134. * 玩家好友-留言数据
  135. * @param int $zoneid 分区id
  136. * @param string $uid
  137. * @return string
  138. */
  139. public static function FriendsMsgQueue_hash($zoneid, $uid)
  140. {
  141. return self::Key_($zoneid, $uid) . (self::bUseShort() ? '-f-m' : '-friends-msgqueue');
  142. }
  143. /**
  144. * 玩家好友-操作队列
  145. * @param int $zoneid 分区id
  146. * @param string $uid
  147. * @return string
  148. */
  149. public static function FriendsOps_hash($zoneid, $uid)
  150. {
  151. return self::Key_($zoneid, $uid) . (self::bUseShort() ? '-f-o' : '-friends-ops');
  152. }
  153. /**
  154. * 玩家好友-别人发送过来的礼物记录
  155. * @param type $zoneid
  156. * @param type $uid
  157. * @return type
  158. */
  159. public static function GiftOps($zoneid, $uid)
  160. {
  161. return self::Key_($zoneid, $uid) . (self::bUseShort() ? '-f-go' : '-friends-giftops');
  162. }
  163. // </editor-fold>
  164. //
  165. // <editor-fold defaultstate="collapsed" desc=" obsoleted for webpay edition ">
  166. //
  167. /**
  168. * [obsolete]
  169. * 玩家支付token信息
  170. * @param int $zoneid 分区id
  171. * @param string $uid
  172. * @return string
  173. */
  174. public static function TokenInfo($zoneid, $uid)
  175. {
  176. return self::Key_($zoneid, $uid) . (self::bUseShort() ? '-t' : '-tokens');
  177. }
  178. /**
  179. * [obsolete]
  180. * 玩家营销礼包临时挂起列表 【qqweb版】
  181. * @param int $zoneid 分区id
  182. * @param string $uid
  183. * @return string
  184. */
  185. public static function GiftStore($zoneid, $uid)
  186. {
  187. return self::Key_($zoneid, $uid) . ( self::bUseShort() ? '-gt' : '-giftitems');
  188. }
  189. // </editor-fold>
  190. //
  191. /**
  192. * 支付流程中, 渠道支付服务器发过来的订单通知, 需要客户端主动请求服务端刷新到自己的账户中.
  193. * @param int $zoneid 分区id
  194. * @param string $uid
  195. * @return string
  196. */
  197. public static function PayOrders($zoneid, $uid)
  198. {
  199. return self::Key_($zoneid, $uid) . ( self::bUseShort() ? '-o' : '-orders');
  200. }
  201. //
  202. // <editor-fold defaultstate="collapsed" desc=" status data ">
  203. /**
  204. * 玩家抽奖数据
  205. * @param int $zoneid 分区id
  206. * @param string $uid
  207. * @return string
  208. */
  209. public static function stat_LotteryRecords($zoneid, $uid)
  210. {
  211. return self::Key_($zoneid, $uid) . ( self::bUseShort() ? '-s-l' : '-stat-lotterys');
  212. }
  213. /**
  214. * 玩家消费数据 - 商品购买量 (zset)
  215. * @param type $zoneid
  216. * @param type $uid
  217. * @return {
  218. * id:times,
  219. * id:times,...s
  220. * }
  221. */
  222. public static function stat_Shopbuy_zset($zoneid, $uid)
  223. {
  224. return self::Key_($zoneid, $uid) . (self::bUseShort() ? '-s-sb' : '-stat-shopbuy');
  225. }
  226. /**
  227. * 玩家消费数据 - 神秘商城商品购买量 (zsets)
  228. * @param type $zoneid
  229. * @param type $uid
  230. * @return type
  231. */
  232. public static function stat_SecretShopBuy_zset($zoneid, $uid)
  233. {
  234. return self::Key_($zoneid, $uid) . (self::bUseShort() ? '-s-sb' : '-stat-shopbuy');
  235. }
  236. /**
  237. * 玩家消费数据 - 消费记录 (list)
  238. * @param type $zoneid
  239. * @param type $uid
  240. * @return type
  241. */
  242. public static function log_shopbuy_list($zoneid, $uid)
  243. {
  244. return self::Key_($zoneid, $uid) . (self::bUseShort() ? '-l-sb' : "-log-shopbuy");
  245. }
  246. /**
  247. * 玩家消费数据 - 神秘商城消费记录 (list30)
  248. * @param type $zoneid
  249. * @param type $uid
  250. * @return type
  251. */
  252. public static function log_secretshopbuy_list($zoneid, $uid)
  253. {
  254. return self::Key_($zoneid, $uid) . (self::bUseShort() ? '-l-ssb' : "-log-secretshopbuy");
  255. }
  256. // </editor-fold>
  257. //
  258. }