naughtonium / laravel-dark-sky
提供DarkSky API的包装器
1.2.5
2018-03-22 21:59 UTC
Requires
- php: >=5.4.0
- guzzlehttp/guzzle: ~5.3|~6.0
- illuminate/support: ~5.3
Requires (Dev)
- phpunit/phpunit: 4.*
README
这提供了一个针对DarkSky API的Laravel风格的包装器。有关请求和响应格式的更多信息,请访问:https://darksky.net/dev/docs
安装
使用以下命令使用composer安装此包
$ composer require naughtonium/laravel-dark-sky
更新composer后,将服务提供者添加到config/app.php
中的providers
数组
Naughtonium\LaravelDarkSky\LaravelDarkSkyServiceProvider::class,
要注册外观访问器,请将以下内容添加到config/app.php
中的aliases
数组
'DarkSky' => \Naughtonium\LaravelDarkSky\Facades\DarkSky::class,
配置
将以下行添加到.env文件中
DARKSKY_API_KEY=<your_darksky_api_key>
使用方法
有关响应格式的详细信息,请访问:https://darksky.net/dev/docs/response
必需参数
location(lat, lon)
传入纬度和经度坐标以获取基本响应
DarkSky::location(lat, lon)->get();
可选参数
有关可选参数的详细信息,请访问:https://darksky.net/dev/docs/forecast
excludes([]) / includes([])
指定要排除/包含的数据块以减少数据传输
DarkSky::location(lat, lon)->excludes(['minutely','hourly', 'daily', 'alerts', 'flags'])->get(); DarkSky::location(lat, lon)->includes(['currently'])->get(); // Same output
atTime(t)
传入一个Unix时间戳以获取该时间的预报。注意:时区相对于给定位置
DarkSky::location(lat, lon)->atTime(timestamp)->get();
language(l)
指定基于文本的响应的语言
DarkSky::location(lat, lon)->language(lang)->get();
units(u)
指定基于单位的响应的单位
DarkSky::location(lat, lon)->units(units)->get();
extend()
将"hourly"响应从48小时扩展到168小时。注意:如果与atTime()时间戳一起使用则不起作用。请参阅:https://darksky.net/dev/docs/time-machine
DarkSky::location(lat, lon)->extend()->get();
辅助工具
以下是一些简写辅助工具,它们的使用可读性与使用单个参数的includes()相同。注意:每个查询只能使用一个,并且仅返回特定于温度的数据
->currently() ->minutely() ->hourly() ->daily() ->flags()
例如,这两个语句是相同的
DarkSky::location(lat, lon)->hourly() DarkSky::location(lat, lon)->includes(['hourly'])->get()->hourly
致谢
许可证
MIT许可证(MIT)。有关更多信息,请参阅许可证文件。