Kaynağa Gözat

代码整理

gwang 5 yıl önce
ebeveyn
işleme
20456dfe79

+ 1 - 1
Gameserver/Amfphp/model/User/UserGameModel.php

@@ -389,7 +389,7 @@ class UserGameModel extends Object_ext {
         $user = $req->userInfo->game;
         my_Assert($user, "user为空");
         my_Assert($amt >= 0, "体力amt小于0");
-        ActiveProc::ChangeTili($amt, $req);
+        ActiveProc::ChangeTili($amt);
         // $user->tili += $amt; 
     }
 

+ 30 - 45
Gameserver/Amfphp/process/ActiveProc.php

@@ -496,7 +496,7 @@ class ActiveProc {
 //
     public static function RecoveryTili($req) {
         $useTili = $req->paras[0];
-        ActiveProc::ChangeTili($useTili, $req);
+        ActiveProc::ChangeTili($useTili);
 
         UserProc::updateUserInfo();
         $result = array(
@@ -507,52 +507,37 @@ class ActiveProc {
         return $resp;
     }
 
-    public static function ChangeTili($useTili, $req) {
-
-
-////获取客户端发来的体力值变化
-//  $useTili = $req->paras[0];
-////超上限的体力值
-        $moreTili = 0;
-
-////如果没有tilitime这个值,说明是以前老用户新登录的,为了纠错在判断里面补值.(正常用户不会进入判断内部)
-        if (!CommUtil::isPropertyExists($req->userInfo->game->privateState, "TiliTime")) {
-            $req->userInfo->game->privateState->TiliTime = time() - 120;
-        }
-
-////如果该账户体力值本身是大于上限的,获取一下超出的体力值
-        if ($req->userInfo->game->tili > 120) {
-            $moreTili = $req->userInfo->game->tili - 120;
-        }
-
-        $useTime = time() - $req->userInfo->game->privateState->TiliTime;
-////该账户超过了时间需要补充体力值
-        if ($useTime > 300) {
-
-            if ($moreTili == 0) {
-
-                $req->userInfo->game->tili += (int) ( (int) ($useTime / 300));
-                if ($req->userInfo->game->tili > 120) {
-
-                    $req->userInfo->game->tili = 120;
-                }
-            }
-            $req->userInfo->game->privateState->TiliTime = time();
-        }
-////如果是消耗体力
-        if ($useTili < 0) {
-////如果消耗的体力超过现有体力,报错.
-            if (abs($useTili) > $req->userInfo->game->tili) {
-                return ErrCode::notenough_tili;
-            }
-////扣除体力
-            else {
-                $req->userInfo->game->tili += $useTili;
+    /**
+     * 修改玩家体力
+     * @param int $useTili $useTili>0代表增加体力,   $useTili<0代表消耗体力
+     * @return type
+     */
+    public static function ChangeTili($useTili) {
+        $req = req();
+        $user = $req->userInfo->game;
+        $moreTili = 0;                                                          # 超上限的体力值
+// 如果没有tilitime这个值,说明是以前老用户新登录的,为了纠错在判断里面补值.(正常用户不会进入判断内部)
+        if (!CommUtil::isPropertyExists($user->privateState, "TiliTime")) {
+            $user->privateState->TiliTime = time() - 120;
+        }
+        if ($user->tili > 120) {                                                # 如果该账户体力值本身是大于上限的,获取一下超出的体力值
+            $moreTili = $user->tili - 120;                                      # 用moreTili保存一下额外的体力值
+        }
+        $useTime = time() - $user->privateState->TiliTime;                      # 距离上次修改体力值的时间
+        if ($useTime > 300) {                                                   # 该账户超过了单位体力时间,需要重新计算体力值
+            if ($moreTili <= 0) {
+                $user->tili += (int) ( (int) ($useTime / 300));
+                if ($user->tili > 120) {                                        # 体力值上限
+                    $user->tili = 120;
+                } // 这代码真烂,以后用的时候再修复吧... -gwang 20200110154858
             }
+            $user->privateState->TiliTime = time();
         }
-////如果是购买增加体力
-        else if ($useTili > 0) {
-            $req->userInfo->game->tili += $useTili;
+        if ($useTili < 0) {                                                     # 如果是消耗体力
+            my_Assert(abs($useTili) < $user->tili, ErrCode::notenough_tili);    # 体力不足
+            $user->tili += $useTili;                                            # 扣除体力
+        } else if ($useTili > 0) {                                              # 如果是购买增加体力
+            $user->tili += $useTili;
         }
         return ErrCode::ok;
     }

+ 1 - 4
Gameserver/Amfphp/process/FightProc.php

@@ -75,10 +75,7 @@ class FightProc {
      * @param Req $req
      */
     static function ClearByDay($req) {
-//        SweepGatesProc::ClearFightRentRecord($req);                             # 清理战斗中租借好友记录
-//        SweepGatesProc::ClearGateForeverGold_FightCountEveryDay($req);          # 清理无尽模式的战斗次数记录
-        SweepGatesProc::ClearGateTimes($req);                                   # 清理每个难度副本的每日战斗次数
-//        PVPProc::ClearDailyPkcnt($req);                                       # 清理每日挑战次数计数
+        SweepGatesProc::ClearGateTimes($req);                                   # 清理每个难度副本的每日战斗次数 
     }
 
 }

+ 2 - 2
Gameserver/Amfphp/process/FightProc/SweepGatesProc.php

@@ -39,7 +39,7 @@ class SweepGatesProc {
             return $canfighterr;
         }
 //  
-        ActiveProc::ChangeTili(-$tili, $req);                                   # 扣减体力
+        ActiveProc::ChangeTili(-$tili);                                         # 扣减体力
         $req->userInfo->game->gates->TotalNum++;                                # 更新战斗次数统计
         $req->userInfo->game->gates->Times++;
 ///增加英雄经验 组长去掉
@@ -403,7 +403,7 @@ class SweepGatesProc {
         }
 //
         $req->userInfo->game->gates->newGateRecord = $gatesRecord;              # 回写数据
-        ActiveProc::ChangeTili(- $tili, $req);                                  # 扣减体力
+        ActiveProc::ChangeTili(- $tili);                                        # 扣减体力
         $req->userInfo->game->gates->TotalNum++;                                # 更新战斗次数统计
         $req->userInfo->game->gates->Times++;
 

+ 18 - 39
Gameserver/Amfphp/process/FriendProc.php

@@ -96,29 +96,21 @@ class FriendProc {
      * @param type $req
      */
     static function LookGuildInfo($req) {
-        $zoneid = $req->zoneid;
         $friendId = $req->paras[0];
+        $zoneid = $req->zoneid;
         $mem = $req->mem;
 
         $sql = "select * from `tab_rolename` where userID = '$friendId'";
-        $paydb = CPayInit();
-        $rows = $paydb->fetch_array($sql);
-        if (count($rows) == 0) {
-            $resp = Resp::err(ErrCode::err_user_no);
-        } else {
-            $friendGuildInfo = GuildProc::getMemUserGuildInfo($mem, $friendId, $zoneid);
-            if ($friendGuildInfo == null && $friendGuildInfo->guildId < 0) {
-                $resp = Resp::err(ErrCode::err_guild_userguildinfono);
-            } else {
-                $guildInfo = GuildProc::getMemGuildInfo($mem, $friendGuildInfo->guildId, $zoneid);
-                if ($guildInfo == null) {                                       # 找不到公会
-                    $resp = Resp::err(ErrCode::err_guild_guildinfono);
-                } else {
-                    $resp = Resp::ok($guildInfo);
-                }
-            }
-        }
-        return $resp;
+        $rows = daoInst()->query($sql)->fetchAll();
+        my_Assert(count($rows) > 0, ErrCode::err_user_no);                      # 找不到玩家数据 
+        $friendGuildInfo = GuildProc::getMemUserGuildInfo($mem, $friendId, $zoneid);
+        my_Assert($friendGuildInfo != null, "好友公会数据为空");
+        my_Assert($friendGuildInfo->guildId > 0, ErrCode::err_guild_userguildinfono);
+
+        $guildInfo = GuildProc::getMemGuildInfo($mem, $friendGuildInfo->guildId, $zoneid);
+        my_Assert($guildInfo != null, ErrCode::err_guild_guildinfono);                                       # 找不到公会
+
+        return Resp::ok($guildInfo);
     }
 
     /**
@@ -126,28 +118,15 @@ class FriendProc {
      * @param type $req
      */
     static function LookFriendInfo($req) {
-        $mem = $req->mem;
-        $zoneid = $req->zoneid;
-        $uid = $req->uid;
         $friendId = $req->paras[0];                                             //好友id
-
+        $mem = $req->mem;
         $sql = "select * from `tab_rolename` where userID = '$friendId'";
-        $paydb = CPayInit();
-        $rows = $paydb->fetch_array($sql);
-        if (count($rows) == 0) {
-            $resp = Resp::err(ErrCode::err_user_no);
-        } else {
-            $friendInfo = self::initfriendInfo($mem, $rows[0]['userID'], $rows[0]['zoneid']);
-            if ($friendInfo == null) {
-                $resp = Resp::err(ErrCode::err_user_no);
-            } else {
-                $friendInfo->fightPower = GuildProc::initFightTeamInfo($mem, $rows[0]['userID'], $rows[0]['zoneid']);
-                $resp = Resp::ok(array(
-                            "friendInfo" => $friendInfo,
-                ));
-            }
-        }
-        return $resp;
+        $rows = daoInst()->query($sql)->fetchAll();
+        my_Assert(count($rows) > 0, ErrCode::err_user_no);                      # 找不到玩家角色记录 
+        $friendInfo = self::initfriendInfo($mem, $rows[0]['userID'], $rows[0]['zoneid']);
+        my_Assert($friendInfo != null, ErrCode::err_user_no);                   # 好友数据初始化成功
+        $friendInfo->fightPower = GuildProc::initFightTeamInfo($mem, $rows[0]['userID'], $rows[0]['zoneid']);
+        return Resp::ok(array("friendInfo" => $friendInfo,));
     }
 
     /**

+ 4 - 8
Gameserver/Amfphp/process/HeroDiscussProc.php

@@ -86,19 +86,15 @@ class HeroDiscussProc {
      */
     static function Score($req) {
         $uid = $req->uid;
-        $heroId = $req->paras[0];                                               # 英雄ID
-        $score = $req->paras [1];                                               # 打分值
+        list($heroId, $score) = $req->paras;                                    # 提取参数:  英雄ID, 打分值
+        my_Assert($score > 0 && $score <= 5, ErrCode::paras_err);               # 参数非法: 打分区间不对
 
-        if ($score <= 0 || $score > 5) {                                        # 参数非法
-            return Resp::err(ErrCode::paras_err);
-        }
-        # 玩家数据,判断是否给此英雄打过分了
-        $pubifno = $req->mem->get(MemKey_User::Union_PublicState_normal($uid));
+        $pubifno = $req->mem->get(MemKey_User::Union_PublicState_normal($uid)); # 玩家各区共享的数据
         $scoredlist = $pubifno->scoredheros;
         if (is_null($scoredlist) || !is_array($scoredlist)) {
             $scoredlist = ArrayInit();
         }
-        if (CommUtil::isInArray($scoredlist, $heroId)) {
+        if (CommUtil::isInArray($scoredlist, $heroId)) {                        # 判断玩家是否给此英雄打过分了
             return Resp::ok(array('err' => 1, 'msg' => 'has scored!'));
         }
         // 添加打分数据,

+ 13 - 23
Gameserver/Amfphp/process/HeroProc.php

@@ -263,32 +263,23 @@ class HeroProc {
         if (!$collectHeros) {
             $collectHeros = ObjectInit();
         }
-        if (!CommUtil::isPropertyExists($collectHeros, $heroUID)) {
-            return Resp::err(ErrCode::hero_no);
-        }
+        my_Assert(CommUtil::isPropertyExists($collectHeros, $heroUID), ErrCode::hero_no); # 玩家拥有此英雄
 //        isEditor() and $targetHero = new UserHeroModel;                         # 智能感知辅助
         $targetHero = $collectHeros->$heroUID;
-
         $maxLevel = $gcfg->Hero_Upgrade_BasicMaxLevel;
-        if ($targetHero->level >= $maxLevel) {                                  # 2. 检查玩家等级是否达到当前等级上限
-            return Resp::err(ErrCode::hero_upgrade_maxupgradelevel);
-        }
+        my_Assert($targetHero->level < $maxLevel, ErrCode::hero_upgrade_maxupgradelevel);  # 2. 检查玩家等级是否达到当前等级上限
+
         $myPacketItems = $user->store->items;                                   # 检查道具的数量,在背包中是否充足
-        if (!CommUtil::isPropertyExists($myPacketItems, $costItemId) #
-                || $myPacketItems->$costItemId < $costNumber) {
-            return Resp::err(ErrCode::store_itemnotenough);
-        }
+        my_Assert(CommUtil::isPropertyExists($myPacketItems, $costItemId), ErrCode::store_itemnotenough); # 
+        my_Assert($myPacketItems->$costItemId >= $costNumber, ErrCode::store_itemnotenough);
+
         $totalEXP = 0;                                                          # 4.计算消耗的道具一共给多少经验值以及 一共要消耗多少金币 
         $costItemConst = GameConfig::item_stones_getItem($costItemId);
-        if (!$costItemConst) {
-            return Resp::err(ErrCode::err_const_no);
-        } else {
-            $totalEXP += $costItemConst->baseExp;
-        }
+        my_Assert(null != $costItemConst, ErrCode::err_const_no);
+        $totalEXP += $costItemConst->baseExp;
         $heroConst = GameConfig::hero_getItem($targetHero->typeId);             # 英雄模板数据
-        if (null == $heroConst) {
-            return \Resp::err(ErrCode::err_const_no, "英雄 模板数据");
-        }
+        my_Assert(null != $heroConst, ErrCode::err_const_no, "英雄 模板数据");
+
         if ($costItemConst->element != 0 #                                      # 相同元素加成
                 && $costItemConst->element == $heroConst->element) {
             $totalEXP += $costItemConst->extraExp;
@@ -1315,7 +1306,7 @@ class HeroProc {
                 $myPacketItems->$piecesId = 0;
             }
             $req->userInfo->game->store->segement = $myPacketItems;
-            UserProc::updateUserInfo();                                     # 回写数据
+            UserProc::updateUserInfo();                                         # 回写数据
             $resp = HeroProc::GetHero($req);
             SystemProc::GetHero($req->zoneid, $user, $heroModelId);
         }
@@ -1339,9 +1330,8 @@ class HeroProc {
         $index = ceil(($user->heros->maxCollectCount - $g->Game_CollectHero_BasicMaxCount) #
                 / $g->Game_CollectHero_OneBuyLimtNum);
         $arr = explode(",", $g->Game_CollectHero_BasicMaxPrice);
-        if ($index >= count($arr)) {
-            Err(ErrCode::paras_err, "yi da shang xian");
-        }
+        my_Assert($index < count($arr), "yi da shang xian");
+
         $realCost = $arr[$index];
 
         if ($realCost != $costCash) {

+ 17 - 44
Gameserver/Amfphp/process/StoreProc.php

@@ -223,10 +223,8 @@ class StoreProc {
         $meltLevel++;
 
         $melt = GameConfig::smelting_getItem($meltLevel);
-        //  var_dump($melt);
-        if ($melt == null) { ////在装备熔炼等级表里找不到该等级的熔炼规则
-            Err(ErrCode::err_const_no);
-        }
+        my_Assert(null != $melt, ErrCode::err_const_no);                        # 在装备熔炼等级表里找不到该等级的熔炼规则
+
 
         $attrib = $melt->attribute; ////当前熔炼等级成功后属性加成
 
@@ -308,37 +306,21 @@ class StoreProc {
      * @param Req $req
      */
     static public function composeItem($req) {
-        $resp = \Resp::err(ErrCode::err_method_notimplement);
-        $store = $req->userInfo->game->store;
-// 解析客户端参数
-        $lowitemId = $req->paras[0]; // 道具id
-        $usenum = $req->paras[1];    // 数量
-        $highitemId = $req->paras[2]; // 道具id
-        $addnum = $req->paras[3];    // 数量
-        $gold = $req->paras[4];    // 需要的手续费
-        echo var_export($gold);
-        $user = $req->userInfo->game; # user引用
-        if ($usenum < 3) {
-            Err(ErrCode::paras_err, "数量非法!");
-        }
-//1.从仓库里移除这个道具
-        $ok = StoreProc::removeItemFromStore($store, $lowitemId, $usenum); // 支持移除指定数量
-//如果仓库道具移出时出错,则直接返回错误
-        if ($ok != ErrCode::ok) {
-            Err($ok);
-        }
+        $resp = Resp::err(ErrCode::err_method_notimplement);
+        list($lowitemId, $usenum, $highitemId, $addnum, $gold) = $req->paras;   # 提取参数: 消耗道具id, 消耗数量, 合成道具Id, 合成数量, 需要的手续费
+        my_Assert($usenum >= 3, "数量非法!");
+        $user = $req->userInfo->game;                                           # user引用
+        $store = $user->store;                                                  # 背包引用
 
-        $bDeal = UserGameModel::Consume_Gold($user, $gold);
-        if ($bDeal) {
-            ActiveProc::ChangeTaskCount($req);
-            $store->items->$highitemId += $addnum;
-            UserProc::updateUserInfo();
-            # 准备返回值
-            $ret = array('resp' => "succeed!");
-            $resp = Resp::ok($ret); //返回必须是object
-        } else {
-            Err(ErrCode::notenough_gold_msg);
-        }
+        $ok = StoreProc::removeItemFromStore($store, $lowitemId, $usenum);      # 从仓库里移除这个道具, 支持移除指定数量
+        my_Assert(ErrCode::ok == $ok, $ok);                                     # 如果仓库道具移出时出错,则直接返回错误
+        my_Assert(UserGameModel::Consume_Gold($user, $gold), ErrCode::notenough_gold_msg); # 扣除消耗的金币
+
+        ActiveProc::ChangeTaskCount($req);                                      # 更新任务计数器
+        $store->items->$highitemId += $addnum;                                  # 添加新合成道具
+        UserProc::updateUserInfo();
+        $ret = array('resp' => "succeed!");                                     # 准备返回值
+        $resp = Resp::ok($ret);                                                 # 返回必须是object
 
         StoreProc::CheckItemNum($req);
         return $resp;
@@ -1361,13 +1343,8 @@ class StoreProc {
      */
     static function sellMultiItemFromStore($req) {
         $resp = new Resp();
-
-        $obj = $req->paras[0]; //获取物品的结构数组
-
-        echo var_export($obj);
-
+        $obj = $req->paras[0];                                                  // 获取物品的结构数组  
         foreach ($obj as $value) {
-
             $type = $value[0];
             $itemId = $value[1];
             ////先判断一下物品类型,如果是可叠加的,就按数量取值,如果是不可叠加的就按uid取值
@@ -1379,16 +1356,12 @@ class StoreProc {
                 $uid = $value[2];
             }//物品的uid
             $resp = StoreProc:: preSellSingleFromStore($req, $type, $itemId, $count, $uid);
-            echo var_export($resp);
-
-            #sellitem();
         }
 
         if (0 == $resp->err) {
             UserProc::updateUserInfo();
         }
 
-        // echo var_export($resp);
         StoreProc::CheckItemNum($req);
         return $resp;
     }

+ 10 - 17
Gameserver/Amfphp/process/SystemProc.php

@@ -232,28 +232,22 @@ class SystemProc {
      * @param Req $req
      */
     static function userPushSysMessage($req) {
+        list($msg, $type) = $req->paras;                                        # 提取参数: 消息内容, 消耗道具类型,1:钻石,2:xx
         $user = $req->userInfo->game;
         $uid = $req->uid;
-        // 提取参数
-        $msg = $req->paras[0];
-        $type = $req->paras[1];                                                 // 消耗道具类型,1:钻石,2:xx
         $cost = 0;                                                              // 花费
         switch ($type) {
-            case 1:
+            case 1:                                                             # 钻石
                 $cost = glc()->SystemMessage_UserSendToMyZone_Cost;
-                if (!$cost) {
-                    return Resp::err(ErrCode::err_msg_usersnedmsg_errorcost);
-                }
-                if (UserGameModel::Consume_Cash($user, $cost)) {
-                    return Resp::err(ErrCode::notenough_cash_msg, "扣费失败");
-                }
+                my_Assert($cost, ErrCode::err_msg_usersnedmsg_errorcost);
+                my_Assert(UserGameModel::Consume_Cash($user, $cost), ErrCode::notenough_cash_msg);
                 break;
             default :
-                return Resp::err(ErrCode::paras_err);                           // 参数非法
+                Err(ErrCode::paras_err);                                        // 其他类型:参数非法
         }
         self::pushSysMessage($req->zoneid, #
                 SysMessageType::UserSendMessage, array($uid, $user->name, $msg));
-        UserProc::updateUserInfo();                                         // 回存账号数据
+        UserProc::updateUserInfo();                                             // 回存账号数据
         return Resp::ok(array('ret' => "succeed"));                             # 返回值
     }
 
@@ -396,8 +390,8 @@ class SystemProc {
     private static function mem_addSysMsg_zset($zoneid, $value) {
         $ts = $value->ts;
         $key = MemKey_GameRun::Game_SysMsgByZone_zset($zoneid);
-        gMem()->zadd($key, array(json_encode($value) => $ts));   // 插入消息
-        gMem()->zremrangebyscore($key, 0, $ts - self::SYS_MSG_OUTTS);  // 清理过期数据
+        gMem()->zadd($key, array(json_encode($value) => $ts));                  # 插入消息
+        gMem()->zremrangebyscore($key, 0, $ts - self::SYS_MSG_OUTTS);           # 清理过期数据
     }
 
 // </editor-fold>
@@ -410,13 +404,12 @@ class SystemProc {
      * @param array $datas
      */
     static function pushSysMessage($zoneid, $type, $datas) {
-        // 添加新系统消息
-        $newMsg = new SysMessageModel(array(
+        $newMsg = new SysMessageModel(array(#                                   # 添加新系统消息
             'type' => $type,
             'datas' => $datas,
             'ts' => now()
         ));
-        self::mem_addSysMsg_zset($zoneid, $newMsg);
+        self::mem_addSysMsg_zset($zoneid, $newMsg);                             # 写入mem
     }
 
 // <editor-fold defaultstate="collapsed" desc=" 备用 需修改">

+ 7 - 15
Gameserver/Amfphp/process/UserProc.php

@@ -102,13 +102,11 @@ class UserProc {
      */
     static function SetUserNickname($req) {
         list($newname, $image) = $req->paras;                                   # 参数: 新昵称, 头像
+        my_Assert(isset(glc()->User_SetNickname_CostItemid), "全局变量中未找到改名消耗道具的配置字段");
         $itemid = glc()->User_SetNickname_CostItemid;
-        if ($itemid) {
-            $err = StoreProc::removeItemFromStore($req->userInfo->game->store, $itemid, 1);
-            if ($err) {
-                Err($err);
-            }
-        }
+        $err = StoreProc::removeItemFromStore($req->userInfo->game->store, $itemid, 1);
+        my_Assert($err == ErrCode::ok, $err);
+
         $req->userInfo->game->name = $newname;
         $req->userInfo->game->img = $image;
         daoInst()->update(self::role_Table)
@@ -258,9 +256,7 @@ class UserProc {
     public static function downloadConstInfo($req) {
         $clientver = $req->paras[0];                                            # 客户端数据版本号
         $serverVer = GameConfig::ver();                                         # 最新数据版本号
-        if ($serverVer == null) {                                               # 找不到常量数据
-            return Resp::err(ErrCode::err_const_no);
-        }
+        my_Assert($serverVer, ErrCode::err_const_no);                           # 找不到常量数据
         if ($clientver == $serverVer) {                                         # 如果版本一致,数据体抹掉,只传回版本号
 //                $md5 = md5(json_encode($constInfo));                          # 计算MD5值,多余计算md5
             $ret = array(
@@ -269,11 +265,8 @@ class UserProc {
             return Resp::ok($ret);
         }
         $constInfo = GameConfig::client();                                      # 取出来的已经是base64过的压缩数据
-        if ($constInfo == null) {
-            return Resp::err(ErrCode::err_const_no);
-        } else {
-            return Resp::ok(array('data' => $constInfo));
-        }
+        my_Assert($constInfo, ErrCode::err_const_no);                           # 找不到配置数据 
+        return Resp::ok(array('data' => $constInfo));
     }
 
     /**
@@ -377,7 +370,6 @@ class UserProc {
      * @return boolean
      */
     static function checkRoleNameNotExist($roleName) {
-
         static $sqlFormat = "SELECT count(*) as rows FROM `tab_rolename` WHERE roleName='%s';";
         $sql = sprintf($sqlFormat, $roleName);
         $n = daoInst()->query($sql)->fetch();

+ 6 - 10
Gameserver/Amfphp/test.php

@@ -9,13 +9,9 @@ include __DIR__ . '/main.php';
 echoLine("phpver:" . PHP_VERSION);
 
 
-$r = "1,23, 305%";
-
-$A = [1, 2, 3];
-$B = [4, 5, 6];
-
-
-list($a, $b, $c, $d) = $A;
-var_dump($c);
-var_dump($d);
-
+$sql = "select * from `tab_rolename` where userID = 'gwang1'";
+$rwo = daoInst()->query($sql)->fetchAll();
+var_dump($rwo);
+$paydb = CPayInit();
+$rows = $paydb->fetch_array($sql);
+var_dump($rows);