Example #1
0
 /**
  * Returns the response data from the Forecast.io in the
  * form of an array
  *
  * @param float $latitude
  * @param float $longitude
  * @param \DateTime $time
  *
  * @return array
  */
 public function getForecast($latitude, $longitude, \DateTime $time = null)
 {
     $this->requestedUrl = Overcast::API_ENDPOINT . Overcast::getApiKey() . '/' . $latitude . ',' . $longitude;
     $response = $this->guzzleClient->get($this->requestedUrl);
     $this->responseHeaders = ['cache' => ['maxAge' => (int) trim(substr($response->getHeader('cache-control'), strrpos($response->getHeader('cache-control'), '=') + 1)), 'expires' => $response->getHeader('expires')], 'responseTime' => (int) $response->getHeader('x-response-time'), 'apiCalls' => (int) $response->getHeader('x-forecast-api-calls')];
     return $response->json();
 }
 /**
  * Returns the response data from the Forecast.io in the
  * form of an array
  *
  * @param float $latitude
  * @param float $longitude
  * @param \DateTime $time
  *
  * @return array
  */
 public function getForecast($latitude, $longitude, \DateTime $time = null)
 {
     $this->requestedUrl = Overcast::API_ENDPOINT . Overcast::getApiKey() . '/' . $latitude . ',' . $longitude;
     if (!is_null($time)) {
         $this->requestedUrl .= ',' . $time->getTimestamp();
     }
     $this->response = json_decode(file_get_contents($this->requestedUrl), true);
     $this->responseHeaders = $this->parseForecastResponseHeaders($http_response_header);
     return $this->response;
 }