2017 © Pedro Peláez
 

symfony-bundle lcn-weather-forecast-bundle

Integrate Weather Forecasts by Forecast.io into your Symfony 2 projects. With API request normalization and caching.

image

locaine/lcn-weather-forecast-bundle

Integrate Weather Forecasts by Forecast.io into your Symfony 2 projects. With API request normalization and caching.

  • Thursday, March 12, 2015
  • by jfmaeck
  • Repository
  • 2 Watchers
  • 0 Stars
  • 1,093 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 1 Forks
  • 0 Open issues
  • 7 Versions
  • 0 % Grown

The README.md

LcnWeatherForecastBundle

Easy Forecast.io weather forecast Symfony 2 integration. MIT License., (*1)

Installation

Step 1: Download the Bundle

Open a command console, enter your project directory and execute the following command to download the latest stable version of this bundle:, (*2)

$ composer require locaine/lcn-weather-forecast-bundle "~1.0"

This command requires you to have Composer installed globally, as explained in the installation chapter of the Composer documentation., (*3)

Step 2: Enable the Bundle

Then, enable the bundle by adding the following line in the app/AppKernel.php file of your project:, (*4)

<?php
// app/AppKernel.php

// ...
class AppKernel extends Kernel
{
    public function registerBundles()
    {
        $bundles = array(
            // ...

            new Lcn\WeatherForecastBundle\LcnWeatherForecastBundle(),
        );

        // ...
    }

    // ...
}

Step 3: Setup Forecast.io API token

Paste your free Forecast.io API token in app/config/parameters.yml:, (*5)

parameters:
    ...
    lcn.weather_forecast_provider.forecast_io.api_token: YOUR_TOKEN
    ...

### Step 4: Adjust caching (optional)

The default cache engine caches the api results in files within the %kernel.cache_dir% directory.
You can, however, provide any Cache Provider implementing the [Doctrine Cache](https://github.com/doctrine/DoctrineCacheBundle) interface:

In config.yml or services.yml:


```yaml
services:
...
    lcn.weather_forecast.cache:
        class: Doctrine\Common\Cache\PhpFileCache
        arguments: [%kernel.cache_dir%]
        calls:
            - [setNamespace, ['lcn_weather_forecast']]
...

Usage

Example controller code:, (*6)

$forecast = $this->container->get('lcn.weather_forecast');

$lat = 53.553521;
$lng = 9.948773;


$forecastForDay = $forecast->getForToday($lat, $lng);
// OR:
$forecastForDay = $forecast->getForDay($lat, $lng, strtotime('tomorrow'));

echo $forecastForDay->getSummary();
echo $forecastForDay->getIcon();
foreach ($forecastForDay->getHours() as $hour => $forecastForHour) {
    echo $forecastForHour->getSummary();
    echo $forecastForHour->getIcon();
    $key = 'temperature'; // $key can be any key from forecast.io api, e.g. time, summary, icon, precipIntensity, precipIntensity, precipProbability, temperature, apparentTemperature, dewPoint, humidity, windSpeed, windBearing, visibility, cloudCover, pressure, ozone
    echo $forecastForHour->get($key, 'fallback default value');
}

$forecastForHour = $forecast->getForCurrentHour($lat, $lng);
// OR:
$forecastForHour = $forecast->getForHour($lat, $lng, strtotime('+ 1 day 3 hours'));

echo $forecastForHour->getSummary();
echo $forecastForHour->getIcon();
$key = 'temperature'; // $key can be any key from forecast.io api, e.g. time, summary, icon, precipIntensity, precipIntensity, precipProbability, temperature, apparentTemperature, dewPoint, humidity, windSpeed, windBearing, visibility, cloudCover, pressure, ozone
echo $forecastForHour->get($key, 'fallback default value');

The Versions

12/03 2015

dev-master

9999999-dev

Integrate Weather Forecasts by Forecast.io into your Symfony 2 projects. With API request normalization and caching.

  Sources   Download

MIT

by Jonas Fischer-Maeck

symfony 2 forecast.io

12/03 2015

v1.0.5

1.0.5.0

Integrate Weather Forecasts by Forecast.io into your Symfony 2 projects. With API request normalization and caching.

  Sources   Download

MIT

by Jonas Fischer-Maeck

symfony 2 forecast.io

18/02 2015

v1.0.4

1.0.4.0

Integrate Weather Forecasts by Forecast.io into your Symfony 2 projects. With API request normalization and caching.

  Sources   Download

MIT

by Jonas Fischer-Maeck

symfony 2 forecast.io

17/02 2015

v1.0.3

1.0.3.0

Integrate Weather Forecasts by Forecast.io into your Symfony 2 projects. With API request normalization and caching.

  Sources   Download

MIT

by Jonas Fischer-Maeck

symfony 2 forecast.io

13/01 2015

v1.0.2

1.0.2.0

Integrate Weather Forecasts by Forecast.io into your Symfony 2 projects. With API request normalization and caching.

  Sources   Download

MIT

by Jonas Fischer-Maeck

symfony 2 forecast.io

13/01 2015

v1.0.1

1.0.1.0

Integrate Weather Forecasts by Forecast.io into your Symfony 2 projects. With API request normalization and caching.

  Sources   Download

MIT

by Jonas Fischer-Maeck

symfony 2 forecast.io

13/01 2015

v1.0.0

1.0.0.0

Integrate Weather Forecasts by Forecast.io into your Symfony 2 projects. With API request normalization and caching.

  Sources   Download

MIT

by Jonas Fischer-Maeck

symfony 2 forecast.io