[태그:] 국토교통부API

  • 국토교통부 지하철 SubwayInfoService API Class 사용설명서

    이 문서는 개발자를 위한 SubwayInfoService 클래스 사용 가이드입니다.

    SubwayInfoService 클래스 구입 : https://sir.kr/cmall/1719750800(옵션 : TAGO 지하철 API Class)

    이 클래스는 국토교통부에서 제공하는 공공데이터 오픈 API를 활용하여 지하철 역 정보, 출구 주변 버스 노선, 출구 주변 시설 목록, 시간표 정보를 조회할 수 있도록 설계되었습니다.

    아래에서 클래스 선언, 함수 원형, 사용법, 예시, 그리고 각 함수의 세부 설명을 확인할 수 있습니다.

    클래스 선언

    $serviceKey = 'YOUR_SERVICE_KEY';
    $subwayInfoService = new SubwayInfoService($serviceKey);
    • $serviceKey: 공공데이터포털에서 발급받은 인증키를 입력합니다.
    • SubwayInfoService: 이 클래스는 지하철 관련 정보를 쉽게 조회하기 위해 설계되었습니다.

    클래스 내 주요함수 소개

    getKeywordBasedSubwayStationList($subwayStationName, $numOfRows = 10, $pageNo = 1, $type = 'xml')

    기능: 지하철역 목록을 키워드로 검색합니다.

    매개변수:

    • $subwayStationName: 조회할 지하철역 이름 (예: ‘서울역’)
    • $numOfRows: 페이지당 결과 개수 (기본값: 10)
    • $pageNo: 페이지 번호 (기본값: 1)
    • $type: 응답 형식 (XML 또는 JSON)

    반환 값: XML 또는 JSON 형식의 역 목록

    getSubwayStationExitBusRouteList($subwayStationId, $numOfRows = 10, $pageNo = 1, $type = 'xml')

    기능: 특정 지하철역 출구별 버스 노선을 조회합니다.

    매개변수:

    • $subwayStationId: 지하철역 ID (예: ‘MTRS11133’)
    • $numOfRows: 페이지당 결과 개수 (기본값: 10)
    • $pageNo: 페이지 번호 (기본값: 1)
    • $type: 응답 형식 (XML 또는 JSON)

    반환 값: 출구별 버스 노선 목록

    getSubwayStationExitFacilityList($subwayStationId, $numOfRows = 10, $pageNo = 1, $type = 'xml')

    기능: 특정 지하철역 출구별 주변 시설 목록을 조회합니다.

    매개변수:

    • $subwayStationId: 지하철역 ID (예: ‘MTRS11133’)
    • $numOfRows: 페이지당 결과 개수 (기본값: 10)
    • $pageNo: 페이지 번호 (기본값: 1)
    • $type: 응답 형식 (XML 또는 JSON)

    반환 값: 출구별 주변 시설 목록

    getSubwayStationScheduleList($subwayStationId, $dailyTypeCode, $upDownTypeCode, $numOfRows = 10, $pageNo = 1, $type = 'xml')

    기능: 특정 지하철역의 시간표를 조회합니다.

    매개변수:

    • $subwayStationId: 지하철역 ID (예: ‘MTRS11133’)
    • $dailyTypeCode: 요일 코드 (01: 평일, 02: 토요일, 03: 일요일)
    • $upDownTypeCode: 상/하행 코드 (U: 상행, D: 하행)
    • $numOfRows: 페이지당 결과 개수 (기본값: 10)
    • $pageNo: 페이지 번호 (기본값: 1)
    • $type: 응답 형식 (XML 또는 JSON)

    반환 값: 시간표 목록

    getAllBusRoutesByStation($subwayStationId)

    기능: 특정 지하철역 출구별로 모든 버스 노선을 조회합니다.

    매개변수:

    • $subwayStationId: 지하철역 ID (예: ‘MTRS11133’)

    반환 값: 출구별로 정렬된 모든 버스 노선 목록

    getAllFacilitiesByStation($subwayStationId)

    기능: 특정 지하철역 출구별로 모든 주변 시설을 조회합니다.

    매개변수:

    • $subwayStationId: 지하철역 ID (예: ‘MTRS11133’)

    반환 값: 출구별로 정렬된 모든 시설 목록

    getSubwayStationInfo($lineName, $stationName)

    기능: 특정 호선과 역명을 기반으로 해당 역의 정보를 조회합니다.

    매개변수:

    • $lineName: 노선 이름 (예: ‘1호선’)
    • $stationName: 지하철역 이름 (예: ‘서울역’)

    반환 값: 호선과 역 이름이 일치하는 지하철역 정보

    사용 예제

    // 1. 특정 역의 상세 정보를 조회
    $stationInfo = $subwayInfoService->getSubwayStationInfo('1호선', '서울역');
    print_r($stationInfo);
    
    // 2. 특정 역 출구의 버스 노선 조회
    $busRoutes = $subwayInfoService->getAllBusRoutesByStation($stationInfo['subwayStationId']);
    print_r($busRoutes);
    
    // 3. 특정 역 출구의 주변 시설 조회
    $facilities = $subwayInfoService->getAllFacilitiesByStation($stationInfo['subwayStationId']);
    print_r($facilities);
    
    // 4. 특정 역의 시간표 조회
    $schedule = $subwayInfoService->getSubwayStationScheduleList(
        $stationInfo['subwayStationId'], '01', 'U'
    );
    print_r($schedule);

    SubwayInfoService 클래스에 대해 궁금하신 사항은 댓글이나 문의사항에 남겨주시면 감사하겠습니다.