>백엔드 개발 >PHP 튜토리얼 >PHP 및 Baidu Map API를 사용하여 버스 경로를 쿼리하고 표시하는 방법

PHP 및 Baidu Map API를 사용하여 버스 경로를 쿼리하고 표시하는 방법

PHPz
PHPz원래의
2023-07-29 22:01:301950검색

PHP 및 Baidu Map API를 사용하여 버스 노선을 쿼리하고 표시하는 방법

머리말:
오늘날의 도시 생활에서 버스 노선은 사람들의 일상 여행에 중요한 교통 수단 중 하나가 되었습니다. 사용자가 특정 버스 경로 정보를 쉽게 쿼리할 수 있도록 PHP 및 Baidu Map API를 사용하여 버스 경로 쿼리 및 표시 기능을 구현할 수 있습니다. 이 기사에서는 PHP 및 Baidu Map API를 사용하여 버스 경로를 쿼리하고 표시하는 방법을 자세히 소개하고 해당 코드 예제를 제공합니다.

1단계: Baidu 개발자 계정 및 키 신청
먼저 Baidu 개발자 계정을 신청하고 Baidu Map API에 액세스하기 위한 키를 얻기 위한 애플리케이션을 만들어야 합니다. Baidu Map Open Platform 웹사이트(http://lbsyun.baidu.com/)를 방문하면 애플리케이션을 만들고 키를 얻을 수 있습니다.

2단계: HTML 페이지 작성
프로젝트의 루트 디렉토리에 버스 노선 조회 페이지를 표시할 index.html 파일을 생성합니다. 코드 예시는 다음과 같습니다.

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>公交路线查询与展示</title>
    <style>
        #map {
            width: 100%;
            height: 600px;
        }
    </style>
</head>
<body>
    <div id="map"></div>

    <script src="http://api.map.baidu.com/api?v=2.0&ak=你的密钥"></script>
    <script src="main.js"></script>
</body>
</html>

3단계: PHP 파일 작성
프로젝트의 루트 디렉터리에 버스 경로 쿼리 로직을 처리할 main.php 파일을 생성합니다. 이 파일에서는 Baidu Map API에서 제공하는 버스 경로 쿼리 인터페이스를 호출하여 버스 경로 정보를 얻습니다. 코드 예시는 다음과 같습니다.

<?php
$origin = $_GET['origin']; // 起点
$destination = $_GET['destination']; // 终点
$key = '你的密钥'; // 百度地图API密钥

$url = "http://api.map.baidu.com/directionlite/v1/transit?origin={$origin}&destination={$destination}&ak={$key}";

$result = file_get_contents($url);
echo $result;
?>

4단계: JavaScript 파일 작성
프로젝트의 루트 디렉터리에 main.js 파일을 생성하여 프런트 엔드에 버스 노선 정보를 표시합니다. 이 파일에서는 Baidu Map API에서 제공하는 JavaScript SDK를 호출하여 버스 경로를 표시합니다. 코드 예시는 다음과 같습니다.

window.onload = function () {
    var map = new BMap.Map('map');
    var origin = new BMap.Point(116.404, 39.915); // 起点经纬度
    var destination = new BMap.Point(116.390, 39.915); // 终点经纬度
    
    map.centerAndZoom(origin, 12); // 设置地图初始化中心点和缩放级别
    
    var transit = new BMap.TransitRoute(map, {
        renderOptions: {map: map},
        onSearchComplete: function(result){
            if (transit.getStatus() == BMAP_STATUS_SUCCESS){
                var plan = result.getPlan(0);
                var route = plan.getRoute(0);
                var steps = route.getSteps();
                
                var html = '';
                for (var i=0; i<steps.length; i++) {
                    html += steps[i].getDescription() + '<br>';
                }
                
                document.getElementById('route').innerHTML = html;
            }
        }
    });
    
    transit.search(origin, destination);
};

5단계: 테스트 및 실행
index.html 파일을 브라우저에서 열고 시작점과 끝점 입력란에 각각 시작점과 끝점의 주소를 입력합니다. 조회버튼을 클릭하시면 버스노선정보를 확인하실 수 있으며, 지도에 경로가 표시됩니다.

결론:
PHP와 Baidu Map API를 사용하여 버스 노선 조회 및 표시 기능을 쉽게 구현할 수 있습니다. 위에 제공된 코드 예제는 이 기능 개발을 더 잘 이해하고 빠르게 시작하는 데 도움이 될 수 있습니다. 이 방법을 통해 사용자는 버스 노선을 쉽게 확인할 수 있어 일상 이동에 편리함을 제공한다.

위 내용은 PHP 및 Baidu Map API를 사용하여 버스 경로를 쿼리하고 표시하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.