Esempio n. 1
0
/**
 * 得到当前用户的公网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;
 }