Maison > Article > développement back-end > Comment intégrer l'API Baidu Map en PHP
Avec l'évolution de la société, nos vies sont indissociables de la navigation cartographique. Dans le développement Web, les opérations cartographiques peuvent être facilement mises en œuvre à l’aide de l’API cartographique. En tant que fournisseur de services de cartographie le plus populaire, l'intégration et l'utilisation de l'API de Baidu Maps ont également attiré une attention croissante. Cet article explique comment intégrer l'API Baidu Map dans PHP pour réaliser le développement d'applications cartographiques.
Avant d'utiliser l'API Baidu Map, vous devez vous inscrire et obtenir AK et SK sur [Baidu Map Open Platform](https://lbsyun.baidu.com/). AK est la clé d'authentification pour accéder à l'API Baidu Map et SK est la clé de vérification de sécurité correspondant à AK. Le processus spécifique pour obtenir AK et SK est le suivant :
L'API Baidu Map fournit une variété d'interfaces, notamment l'API JavaScript, l'API HTTP, le SDK mobile, etc. Parmi eux, l'API HTTP peut accéder directement au service de carte Baidu via des requêtes HTTP. Elle est très puissante et facile à utiliser, c'est pourquoi la méthode d'intégration de l'API HTTP est présentée ici.
Les appels d'API HTTP sont implémentés via des requêtes réseau et nécessitent l'utilisation de la bibliothèque cURL de PHP et de la fonction json_decode. Les étapes spécifiques sont les suivantes :
Utilisez la bibliothèque cURL pour envoyer une demande d'accès HTTP à l'API Baidu Map et obtenir la réponse.
//百度地图HTTP API接口地址 $url = "http://api.map.baidu.com/place/v2/search?query=美食®ion=上海&output=json&ak=your_ak"; //初始化cURL $curl = curl_init($url); //设置请求选项 curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);//忽略SSL证书 //发送请求 $response = curl_exec($curl); //关闭cURL curl_close($curl);
$url dans le code ci-dessus est l'adresse de l'interface API HTTP fournie par l'API Baidu Map, où le paramètre de requête représente le mot-clé de recherche, le paramètre de région représente la zone de recherche et le paramètre de sortie représente le format de sortie (le format json est utilisé ici), ak Le paramètre est la valeur AK obtenue précédemment.
Analyser le résultat de la réponse HTTP
Le résultat de la réponse HTTP de l'API Baidu Map est constitué de données texte au format JSON, qui doivent être analysées dans un tableau à l'aide de la fonction json_decode de PHP pour le traitement.
//解析JSON字符串 $result = json_decode($response, true);
$result dans le code ci-dessus est le tableau analysé.
Utilisez les résultats analysés
Les résultats analysés peuvent être utilisés selon les besoins, comme l'affichage d'informations, le calcul de distance et d'autres opérations.
L'API JavaScript est la partie centrale de l'API Baidu Map, fournissant des services de cartographie complets et interactifs, qui peuvent être utilisés pour le développement de pages Web et de terminaux mobiles. L'intégration de l'API JavaScript via PHP peut permettre d'obtenir des applications cartographiques plus flexibles et plus conviviales. Les étapes spécifiques sont les suivantes :
Introduisez l'API JavaScript de Baidu Maps dans la page HTML.
<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=your_ak"></script>
your_ak dans le code ci-dessus est la valeur AK obtenue précédemment.
Créez des objets cartographiques et effectuez les réglages associés.
//创建地图对象 var map = new BMap.Map("map-container"); //设置地图中心点和缩放级别 var point = new BMap.Point(121.479, 31.231); map.centerAndZoom(point, 15); //添加控件 map.addControl(new BMap.NavigationControl()); //添加缩放控件 map.addControl(new BMap.ScaleControl()); //添加比例尺控件 //开启鼠标滚轮缩放 map.enableScrollWheelZoom(true);
La carte dans le code ci-dessus est l'objet cartographique, map-container est la valeur d'identification du conteneur de carte, point représente les coordonnées de longitude et de latitude du point central de la carte et 15 représente le niveau de zoom initial.
Ajoutez une superposition sur la carte.
La superposition fait référence aux points, lignes, zones et autres graphiques affichés sur la carte. Baidu Maps propose plusieurs types de superpositions, tels que des points marqués, des fenêtres d'informations, des polylignes, des polygones, etc. Les superpositions peuvent être facilement créées et gérées à l'aide de l'API JavaScript en PHP.
//创建标注点 var marker = new BMap.Marker(point); //设置标注点图标 var icon = new BMap.Icon("http://api.map.baidu.com/img/markers.png", new BMap.Size(23, 25), { offset: new BMap.Size(0, 0), imageOffset: new BMap.Size(-23, -25) }); marker.setIcon(icon); //添加标注点到地图中 map.addOverlay(marker);
Le marqueur dans le code ci-dessus est l'objet du point de marquage, l'icône est l'icône du point de marquage, la taille et le décalage sont la taille et le décalage de l'icône. En définissant les attributs des points d'étiquette, vous pouvez obtenir un affichage plus flexible des superpositions.
Jusqu'à présent, nous avons présenté comment intégrer l'API Baidu Map en PHP et effectuer des opérations cartographiques via l'API HTTP et JavaScript. Lors du développement de projets réels, il est nécessaire de sélectionner l'interface API appropriée en fonction des besoins réels et d'effectuer une configuration et un développement détaillés.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!