Laravel 5 compatible package
Laravel version | Package version |
---|---|
~4.2 | ~1.2 |
~5.1 | ~2.1 |
Laravel-forecast provides a service provider and a facade around the Forecast-php wrapper.
Want to use this as a standalone package ? Checkout the Forecast-php API wrapper.
$ composer require nwidart/laravel-forecast
Add the service provider in app/config/app.php
'providers' => [
...
Nwidart\LaravelForecast\LaravelForecastServiceProvider::class
]
Add the Alias provider in app/config/app.php
'aliases' => [
...
'Forecast' => Nwidart\LaravelForecast\ForecastFacade::class,
]
Publish the configuration file and add your forecast API key
$ php artisan vendor:publish --provider="Nwidart\LaravelForecast\LaravelForecastServiceProvider"
<?php
Forecast::get('37.8267','-122.423');
// Get the forecast at a given time
Forecast::get(('37.8267','-122.423', '2013-05-06T12:00:00-0400')
In the settings you can add global options that will have used on every request made to Forecast.io. You can add this in the options
key of the settings file.
For instance if you want temperature in Celsius:
'options' => [
'units' => 'si',
],
For more details and all available options check the official documentation.
You can also inject the Nwidart\ForecastPhp\Forecast
class into your constructor.
/**
* @var \Nwidart\ForecastPhp\Forecast
*/
private $forecast;
public function __construct(\Nwidart\ForecastPhp\Forecast $forecast)
{
$this->forecast = $forecast;
}
public function doSomething()
{
$weather = $this->forecast->get($lat, $lon);
}