dekiakbar / bmkg-api-php-client
php api 客户端,用于 https://data.bmkg.go.id/
1.0.1
2020-08-22 16:32 UTC
Requires
- php: >=7.2
- ext-simplexml: *
Requires (Dev)
- phpunit/phpunit: 8.0
This package is auto-updated.
Last update: 2024-09-10 19:31:43 UTC
README
此项目用于从 https://data.bmkg.go.id/ 抓取数据
警告
必须将 BMKG(气象、气候和地球物理局)列为数据来源,并在您的应用程序或系统中显示它们。
入门
以下说明将帮助您在本地机器上创建并运行项目的副本,用于开发和测试。
先决条件
在安装此包之前,请确保满足以下要求
PHP >= 5.6
php-xml
安装
要安装此包,请按照以下说明操作
使用以下命令通过 composer 安装
composer require dekiakbar/bmkg-api-php-client
完成,尽情享受吧 :)
示例用法
预报
- 通过省份获取所有预报数据,此方法将返回包括温度、湿度、风速、风向和天气在内的所有城市数据,此方法将返回数据类型: stdclass 对象,如果您未向 execute() 方法传递任何参数,则将返回所有省份的数据。
require_once __DIR__ . '/vendor/autoload.php'; use Dekiakbar\BmkgApiPhpClient\Forecast; $data = new Forecast(); //this will return data only from West java province print_r($data->execute('JawaBarat')->getData()); //this will return data from all provinces print_r($data->execute()->getData());
- 获取可用区域代码
//this will retun available area code, you can pass this area code to execute method //this will return array print_r($data->getAreaList());
- 获取城市列表
//this will return available city list from West java province print_r($data->execute('JawaBarat')->getCityList()->getData());
- 获取特定城市的数据
//this will return data only for spesific city print_r($data->execute('JawaBarat')->getDataByCityId('501212')->getData()); //this will return data for all city, coz there is no parameter passed to the function print_r($data->execute('JawaBarat')->getDataByCityId()->getData());
- 获取数据列表
//this will return available data id from specific city print_r($data->execute('JawaBarat')->getDataByCityId('501212')->getDataList()->getData());
- 通过 Id 获取特定数据,数据 Id 不能为空,使用 getDataList() 获取可用的数据 Id。
//this will return specific data from specific city print_r($data->execute('JawaBarat')->getDataByCityId('501212')->getDataById('hu')->getData());
地震
- 从 bmkg 开放数据获取地震数据,此方法将返回数据类型: stdclass 对象,如果您未向 execute() 方法传递任何参数,则将返回与 autogempa 代码相同的数据。
require_once __DIR__ . '/vendor/autoload.php'; use Dekiakbar\BmkgApiPhpClient\Earthquake; // Earthquake class initialization $data = new Earthquake(); // This will method will get data from bmkg, then will fetch the data and return as StdClass onject // if there is no parameter passed to the excute method then it will return defsult data (autogempa) print_r( $data->execute()->getData() ); // With parameter example print_r( $data->execute('lasttsunami')->getData() );
- 获取可用代码列表
// This will return available code list for execute method print_r( $data->getCodeList() );
构建工具
贡献
请fork此存储库,如果您想为此项目做出贡献,请创建新的pull request。或者,如果您发现此项目有问题,请打开一个新的问题。
作者
- Deki Akbar - 初始工作
查看参与此项目的 贡献者列表。