owenandrews/willyweather-php

WillyWeathers v2 API的PHP客户端。

v0.1.0 2017-05-22 01:13 UTC

This package is not auto-updated.

Last update: 2024-09-20 19:50:34 UTC


README

WillyWeathers v2 API的PHP客户端。 http://www.willyweather.com.au/info/api.html

注意:这不是官方库,也不包含全部功能。

需求

安装

composer require owenandrews/willyweather-php

使用

获取位置

获取指定位置ID的基本信息。

use WillyWeather\Client;

$willyWeather = new Client('<API-KEY>');
$sydney = $willyWeather->location(4950);
$sydney->getName();

获取预报和观测数据

获取位置的基本预报和观测数据。

use WillyWeather\Client;

$willyWeather = new Client('<API-KEY>');
$sydney = $willyWeather->location(4950);
$sydney->getForecasts();
$sydney->getObservational();

获取自定义预报数据

默认情况下,只返回基本7天天气预报。要覆盖此设置,只需在函数调用中添加一个预报类型数组。请参阅API文档以获取所有可用的预报类型。请注意,您必须为API密钥启用每个预报类型,否则请求将失败。

use WillyWeather\Client;

$willyWeather = new Client('<API-KEY>');
$sydney = $willyWeather->location(4950);
$sydney->getForecasts(["forecasts" => ["temperature", "wind", "rainfallprobability"], "days" => 3]);

简写

到目前为止,我们已经收到了位置、预报和观测数据,每次都进行单独的API调用。幸运的是,我们可以将它们捆绑成一个API调用。

use WillyWeather\Client;

$willyWeather = new Client('<API-KEY>');
$sydney = $willyWeather->location(4950, ["forecasts" => ["temperature", "wind", "rainfallprobability"], "days" => 3, "observational" => true]);
$sydney->getForecasts();
$sydney->getObservational();

这次只进行了一次API调用。

搜索

根据地名或邮编搜索位置。

use WillyWeather\Client;

$willyWeather = new Client('<API-KEY>');
$sydney = $willyWeather->searchByQuery("Sydney")[0];

根据与一组坐标的邻近度搜索位置。

use WillyWeather\Client;

$willyWeather = new Client('<API-KEY>');
$mackenziesBay = $willyWeather->searchByCoordinates(["lat" => -33.8996141, "lng" => 151.272962])[0];

缓存

包含基本的基于文件的缓存,这可以减少重复的API调用。要启用它,只需在构建客户端时传入一个合适的路径。

use WillyWeather\Client;

$willyWeather = new Client('<API-KEY>', '/tmp/');

日期和时间

所有日期/时间字符串都转换为位于位置本地时区的Carbon对象。

贡献

欢迎贡献,只需提交一个拉取请求。😄

许可

本项目采用MIT许可证 - 请参阅LICENSE文件以获取详细信息。

使用技术

作者