ndolestudio / darksky-php
Dark Sky 天气 API 的 PHP 封装器
1.0.0
2018-10-09 09:45 UTC
Requires
- php: ^7.0
- ext-json: *
- guzzlehttp/guzzle: ^6.3
Requires (Dev)
- phpunit/phpunit: ^7.0
This package is auto-updated.
Last update: 2024-09-09 22:18:26 UTC
README
这是一个为官方 Dark Sky API 提供的 PHP 封装器,可在 https://darksky.net/dev/docs 找到
入门指南
以下说明将指导您如何安装和使用此包,以使用 Dark Sky API 获取天气信息。
先决条件
此包与 PHP 7 兼容。因此,您的 PHP 版本必须大于 7.0
或更高。
安装
可以使用 composer 轻松安装此包。
composer install ndolestudio/darksky-php
示例
创建一个实现 LocationDateTimeInput
接口的面板。此类将用于 DarkSkyApiClient
的输入。
class Request implements \DarkSky\Contracts\LocationDateTimeInput { public function getLatitude(): float { return 33.22; } public function getLongitude(): float { return 24.44; } public function getDateTime(): DateTime { return new DateTime('now'); } }
使用上面创建的 LocationDateTimeInput
面板,通过 DarkSkyApiClient
获取天气数据。
// Require composer dependencies. require './vendor/autoload.php'; // Here, we create a DarkSkyApiConfiguration $apiConfiguration = new \DarkSky\Configurations\DarkSkyApiConfiguration( ['daily','currently'], // Excluded blocks 'https://api.darksky.net/forecast/b95b5555fb5f8e94cf499f4036618e55/', // Api Endpoint 'si' // Units ); // Use the configuration to create a DarkSkyApiClient $darkSkyApiClient = new \DarkSky\Clients\DarkSkyApiClient($apiConfiguration, new \GuzzleHttp\Client()); // Create an instance of the LocationDateTimeInput $request = new Request(); // This fetches the json response $jsonResponse = $darkSkyApiClient->fetchWeatherData($request);
运行测试
可以使用 PHPUnit
运行测试。运行测试的步骤如下:
克隆此存储库后,使用 composer 下载依赖项
composer install
上面的步骤将安装 PHPUnit
,您可以使用以下命令运行:
./vendor/bin/phpunit
构建工具
- Guzzle - 可扩展的 PHP HTTP 客户端
贡献
请阅读 CONTRIBUTING.md 以获取有关我们行为准则的详细信息,以及向我们提交拉取请求的过程。
版本控制
我们使用 SemVer 进行版本控制。有关可用版本,请参阅此存储库的 标签。
作者
有关参与此项目的 贡献者 列表,请参阅。
许可证
本项目采用 MIT 许可证授权 - 有关详细信息,请参阅 LICENSE.md 文件。