World Air Quality Index Project는 전 세계의 현재 및 실시간 대기 질을 매핑하기위한 이니셔티브입니다. 대기 질 인덱스는 PM2.5, PM10, 오존, NO2, SO2 및 세계의 다양한 모니터링 스테이션에서 제공하는 CO 시간별 측정을 기반으로합니다.
이 패키지는 해당 지역의 대기 질 인덱스를 쉽게 검색 할 수 있으며 WAQI 프로젝트의 실시간 대기 질 데이터 피드 (API)를 기반으로합니다.
참고 :이 패키지 (및 기본 AQI API)를 사용하려면 액세스 토큰이 필요합니다. 여기에서 토큰을 얻을 수 있습니다 : https://aqicn.org/data-platform/token ..
azuyalabs/waqi 사용하려면 php> = 8.2가 필요합니다.
작곡가를 통해이 패키지를 가져올 수 있습니다.
composer require azuyalabs/waqi 프로젝트에 Composer autoload 파일을 포함하여 시작하십시오.
<?php
require ' vendor/autoload.php ' ;AQI 액세스 토큰을 사용하여 WAQI 객체의 인스턴스를 만듭니다.
use Azuyalabs WAQI WAQI ;
$ waqi = new WAQI (<your access token>); 그런 다음 원하는 도시 또는 모니터링 스테이션 이름 (예 : 'New York')과 함께 getObservationByStation 메소드를 사용하십시오. 이것은 최신 대기 질 관찰을 얻을 것입니다.
$ waqi -> getObservationByStation ( ' new york ' );모든 것이 잘 진행되면 다양한 API 방법을 사용하여 선택한 도시 또는 모니터링 스테이션의 검색된 대기 질 지수에 대한 세부 정보를 얻으십시오.
AQI (Air Quality Index)를 얻으려면 getAQI 방법을 사용하십시오.
$ waqi -> getAQI ();이것은 측정시이 모니터링 스테이션에서 측정 된 대기 질 인덱스를 포함하는 배열 구조를 반환합니다. 4 개의 요소가 포함되어 있습니다.
예제 출력 ( 'New York'의 경우) :
- ' aqi ' : 15
- ' pollution_level ' : Good
- ' health_implications ' : Air quality is considered satisfactory, and air pollution poses little or no risk.
- ' cautionary_statement ' : None일반적인 대기 질 정보 외에도 특정 오염 물질 수준 정보도 제공됩니다. 모든 모니터링 스테이션이 모든 오염 물질 유형을 캡처하는 것은 아니므로 이러한 API 기능 중 일부는 'NULL'을 반환 할 수 있습니다.
특정 오염 물질 수준 정보를 얻기 위해 다음 API 기능을 사용할 수 있습니다.
getCO() : 측정시 모니터링 스테이션에서 측정 된 일산화탄소 (CO) 수준을 반환합니다.getNO2() : 측정시 모니터링 스테이션에서 측정 된 이산화 질소 (NO2) 수준을 반환합니다.getO3() : 측정시 모니터링 스테이션에서 측정 된 오존 (O3) 레벨을 반환합니다.getSO2() : 측정시 모니터링 스테이션에서 측정 된 이산화황 (SO2) 수준을 반환합니다.getPM10() : 측정시이 모니터링 스테이션에서 측정 된 미립자 물질 10 마이크로 미터 이하 (PM10)의 레벨을 반환합니다.getPM25() : 측정시이 모니터링 스테이션에서 측정 된 미립자 물질 2.5 마이크로 미터 이하 (PM2.5)를 반환합니다.모니터링 스테이션에 대한 정보는 두 가지 API 방법을 통해 얻을 수 있습니다.
먼저 API 메소드를 사용하여 getMonitoringStation() 은 주어진 모니터링 스테이션에 대한 정보를 반환합니다.
둘째, API 메소드 getAttributions() 이 모니터링 스테이션의 EPA 속성 목록을 반환합니다.
추가 정보를 제공하는 다른 API 방법은 다음과 같습니다.
getMeasurementTime() : 마지막 측정을 수행 한 날짜/시간을 반환합니다. ( DateTime 객체로).getHumidity() : 측정시이 모니터링 스테이션에서 측정 된 습도 ( %)를 반환합니다.getTemperature() : 측정시이 모니터링 스테이션에서 측정 된 온도 (섭씨도)를 반환합니다.getPressure() : 측정시이 모니터링 스테이션에서 측정 된 기압 (Millibars)을 반환합니다.getPrimaryPollutant() : 측정시이 모니터링 스테이션 (예 : 'PM25')에서 1 차 오염 물질의 이름을 반환합니다. 변경 사항에 대한 자세한 내용은 ChangElog를 참조하십시오.
이 패키지에는 PHPUnit 테스트 스위트가 함께 제공됩니다. 테스트를 실행하려면 프로젝트 디렉토리에서 다음 명령을 실행하십시오.
composer test또는 대안으로 다음과 같이 실행됩니다.
vendor/bin/phpunit기부금이 장려되고 환영받습니다. GitHub에서 피드백을 받거나 요청을 당기는 것이 항상 기쁩니다.
내가 만드는 것을 즐기면 여분의 커피 한 잔에 대단히 감사합니다 :). 귀하의 지원은 이와 같은 오픈 소스 소프트웨어 프로젝트에 더 많은 시간을 투자하는 데 도움이됩니다.
이 패키지는 MIT 라이센스에 따라 오픈 소프트웨어 소프트웨어입니다. 자세한 내용은 라이센스를 참조하십시오.