/** * 得到当前用户的公网IP,目前是通过ip138来实现的. * */ function getIP() { $ht = new HTTP("http://www.ip138.com/ip2city.asp", "GET"); #$ht=new HTTP("http://www.dnspod.com/About/IP","GET"); $ret = $ht->exec(); $patt = "/\\[([0-9\\.]*)\\]/"; preg_match_all($patt, $ret, $out); return array_pop(array_pop($out)); }
/** * Get Matches and Alliances * * Returns an array of matches and the alliances for each match at an event. * * @param string $eventKey * @return array|false * @throws Exception */ public function getMatches($eventKey) { if (!is_string($eventKey)) { throw new Exception("eventKey is not string: " . $eventKey); } $request = new HTTP($this->TConfig); $request->setURL(static::uri . '/event/' . $eventKey . '/matches'); $request->setHeaders($this->setAPIHeaders()); $out = $request->exec(); if ($out['code'] !== 200) { throw new Exception("Event key matches returned non-200 response code: " . $out['code']); } $body = json_decode($out['body'], true); if (!is_array($body)) { //throw new Exception("getMatches(...) request body was not array when attempted to be decoded."); return false; } if (count($body) > 0) { $matches = array(); foreach ($body as $match => $data) { $matches[$match] = array('matchNumber' => $data['match_number'], 'setNumber' => $data['set_number'], 'red' => $data['alliances']['red']['teams'], 'blue' => $data['alliances']['blue']['teams']); } unset($body); unset($out); unset($request); return $matches; } return false; }