php nominatim
2.0.0
OpenStreetMap 데이터 검색 엔진인 Nominatim용 PHP 클라이언트입니다.
짓다 | 안정적인 | 특허 |
---|---|---|
Composer가 이미 설치되어 있는 경우
composer require riverside/php-nominatim
Composer가 시스템에 아직 설치되지 않은 경우 다음 명령줄을 사용하여 설치할 수 있습니다.
$ curl -sS https://getcomposer.org/installer | php
다음으로, 프로젝트 루트의 작곡가.json 파일에 다음 require 항목을 추가하세요.
{"require" : {"riverside/php-nominatim" : "^2.0"} }
마지막으로 Composer를 사용하여 php-nominatim과 해당 종속 항목을 설치합니다.
$ php composer.phar install
__DIR__이 필요합니다. '/vendor/autoload.php';
텍스트 설명이나 주소에서 위치를 찾아보세요.
$client = new RiversideNominatimClient();try {$response = $client->search('Madison Square Garden, NY');if ($response->isOK()) {echo $response->getLat(0) . ", " . $응답->getLng(0); } else {echo '위치를 찾을 수 없습니다.'; } } catch (InvalidArgumentException $e) {echo $e->getMessage(); } catch(예외 $e) {echo $e->getMessage(); }
위도와 경도로부터 주소를 생성합니다.
$client = new RiversideNominatimClient();try {$response = $client->reverse(48.8539373, 2.2825966);if ($response->isOK()) {echo $response->getAddress(0); } else {echo '주소를 찾을 수 없습니다'; } } catch (InvalidArgumentException $e) {echo $e->getMessage(); } catch(예외 $e) {echo $e->getMessage(); }
노드, 경로 또는 관계와 같은 하나 이상의 OSM 개체의 주소 및 기타 세부 정보를 쿼리합니다.
$client = new RiversideNominatimClient();try {$client->setAddressDetails(1);$response = $client->lookup('R146656,W104393803,N240109189');if ($response->isOK()) {echo ' <pre>';print_r($response->toArray()); } else {echo '주소를 찾을 수 없습니다'; } } catch (InvalidArgumentException $e) {echo $e->getMessage(); } catch(예외 $e) {echo $e->getMessage(); }
데이터베이스에 저장된 단일 장소에 대한 모든 세부정보를 표시합니다.
$client = new RiversideNominatimClient();try {$client->setAddressDetails(1);$response = $client->details(199375150);if ($response->isOK()) {echo '<pre>';print_r($response->toArray()); } else {echo '장소를 찾을 수 없습니다'; } } catch (InvalidArgumentException $e) {echo $e->getMessage(); } catch(예외 $e) {echo $e->getMessage(); }
서비스와 데이터베이스가 실행 중인지, 데이터베이스가 마지막으로 업데이트된 시기를 확인하세요.
$client = new RiversideNominatimClient();try {$response = $client->status();if ($response->isOK()) {echo '<pre>';print_r($response->toArray()); } else {echo '상태를 찾을 수 없습니다'; } } catch (InvalidArgumentException $e) {echo $e->getMessage(); } catch(예외 $e) {echo $e->getMessage(); }
OSM에서 삭제되었지만 실수로 삭제된 경우를 대비해 Nominatim에 보관된 개체를 나열합니다.
$client = new RiversideNominatimClient();try {$response = $client->deletable();if ($response->isOK()) {echo '<pre>';print_r($response->toArray()); } else {echo '삭제 가능한 개체를 찾을 수 없습니다.'; } } catch (InvalidArgumentException $e) {echo $e->getMessage(); } catch(예외 $e) {echo $e->getMessage(); }
Nominatim이 감지한 깨진 다각형 목록입니다.
$client = new RiversideNominatimClient();try {$response = $client->polygons();if ($response->isOK()) {echo '<pre>';print_r($response->toArray()); } else {echo '다각형을 찾을 수 없습니다'; } } catch (InvalidArgumentException $e) {echo $e->getMessage(); } catch(예외 $e) {echo $e->getMessage(); }
https://wiki.openstreetmap.org/wiki/Nominatim
https://github.com/openstreetmap/Nominatim
https://nominatim.openstreetmap.org/
https://nominatim.org/