Пример #1
0
 public function SocketGetServerInfo($buff)
 {
     $oUser = new Lm_User();
     $oLogin = new Lm_Login();
     $oServer = new Config_Server();
     $arrIP = "";
     $format = "V1uLength/V1uID/v1Type/C1MsgLevel/C1Line/C*";
     $unpackArr = @unpack($format, $buff);
     foreach ($unpackArr as $key => $value) {
         if (is_int($key)) {
             $arrIP .= chr($value);
         }
     }
     if ($arrIP) {
         $ServerInfo = $oServer->getByIp(trim($arrIP));
         if ($ServerInfo['ServerId']) {
             $result = array('return' => 1, 'ServerInfo' => $ServerInfo, 'comment' => '找到服务器');
         } else {
             $result = array('return' => 2, 'comment' => '你所查询的IP不属于任何服务器');
         }
     } else {
         $result = array('return' => 0, 'comment' => "请输入服务器IP");
     }
     $tmpArr = explode('|', $allMsg);
     $resArr['uLength'] = 17;
     $resArr['uID'] = $unpackArr['uID'];
     $resArr['uType'] = 60207;
     $resArr['uMsgLevel'] = $unpackArr['MsgLevel'];
     $resArr['uLine'] = $unpackArr['Line'];
     $resArr['m_ucResultID'] = $result['return'];
     $resArr['m_uiZoneID'] = $result['ServerInfo']['ServerId'];
     //重新封包
     $format = "V2vC3V";
     $resMsg = pack($format, $resArr['uLength'], $resArr['uID'], $resArr['uType'], $resArr['uMsgLevel'], $resArr['uLine'], $resArr['m_ucResultID'], $resArr['m_uiZoneID']);
     return $resMsg;
 }