October 10
Per iniziare una applicazione Google Maps con PHP, è necessario creare uno script PHP che i dati di uscita necessaria per l'applicazione Google Maps in un formato XML. È quindi necessario creare la funzionalità delle applicazioni Google Maps con HTML e Javascript e chiamare lo script PHP per recuperare i dati necessari per la mappa. Opzionalmente si può incapsulare l'intera applicazione Google Maps all'interno di un file PHP, piuttosto che all'interno di un file HTML, per includere logica aggiuntiva.
1 Creare una classe PHP per memorizzare le coordinate di latitudine e longitudine e una descrizione. Ad esempio, digitare:
<? Php
class coordinate {
public $latitude, $longitude, $description;
Funzione pubblica __construct ($ lat, $ lng, $ descrizione) {
$ This-> latitudine = $ lat;
$ This-> longitudine = $ GNL;
$ This-> description = $ descrizione;
}
}
2 Creare una classe PHP per memorizzare una serie di coordinate associati ad un nome identificativo e la descrizione. Aggiungere una funzione alla classe di uscita una versione XML dei dati. Ad esempio, digitare:
Coordinate class {
protected $coordinates;
Funzione pubblica __construct () {
$ This-> coordinate = array ();
}
funzione add pubblico ($ nome, $ descrizione, $ lat, $ GNL) {
$ This-> coordinate [$ name] = new coordinate ($ lat, $ lng, $ descrizione);
}
Funzione pubblica output_xml () {
$ Xml = new DOMDocument ( "1.0");
$ Node = $ XML> createElement ( "marcatori");
$ Root = $ XML> appendChild ($ node);
foreach ($ this-> coordinate da $ chiave => valore di $) {
$ Node = $ XML> createElement ( "marker");
$ Nuovo_nodo = $ root-> appendChild ($ node);
$ Newnode-> setAttribute ( "città", $ chiave);
$ Newnode-> setAttribute ( "lat", $ a valore> latitudine);
$ Newnode-> setAttribute ( "lng", $ a valore> longitudine);
$ Newnode-> setAttribute ( "disc", $ a valore> descrizione);
}
echo $ XML> saveXML ();
}
}
3 Creare il programma PHP principale per memorizzare la latitudine e longitudine per le città e di uscita selezionato una versione XML di tali dati quando il programma viene eseguito. Ad esempio, digitare:
$ città = nuove coordinate ();
$ Cities-> aggiungere ( "Nassau", "Bahamas", "25,08,333 mila", "-77,3333");
$ Cities-> aggiungere ( "Cairo", "Egitto", "36,01,667 mila", "31,2333");
$ Cities-> aggiungere ( "Paris", "Francia", "48,83,333 mila", "2,33,333 mila");
$ Cities-> aggiungere ( "Pechino", "Cina", "39,91,667 mila", "116,3333");
$ Cities-> aggiungere ( "Santiago", "Cile", "-33,40000", "-70,66667");
$ Cities-> output_xml ();
?>
4 Creare un nuovo file PHP se si desidera includere la logica PHP con il programma principale. Creare le intestazioni HTML per la pagina Web. Ad esempio, digitare:
<? Php
$ Custom_name = "Steve";
?>
<! DOCTYPE html>
<Head>
<Meta name = "finestra" content = "iniziale scala = 1.0, user-scalable = no" />
<Meta http-equiv = "Content-Type" content = "text / html; charset = utf-8" />
? <Title> <? Php echo $ custom_name; ?> 'S Mappa di Internazionale Città </ title>
5 Includere l'API biblioteca javscript esterno Google Maps. Ad esempio, digitare:
<Script type = "text / javascript"> </ script>
6 Creare il programma principale Javascript. Inizia lo script con la creazione di una variabile per memorizzare la mappa. Ad esempio, digitare:
<Script type = "text / javascript">
var map;
7 Creare una funzione per visualizzare la mappa sullo schermo. Inizia definendo le opzioni per la mappa. Creare la mappa e creare una variabile per la finestra pop-up informativo. Ad esempio, digitare:
function create() {
var newYork = new google.maps.LatLng (40,69847032728747, -73,9514422416687);
var mapOptions = {zoom: 13, Centro: newYork, mapTypeId: "tabella di marcia"};
map = new google.maps.Map (document.getElementById ( "mappa"), mapOptions);
infowindow = new google.maps.InfoWindow;
8 Chiamare una funzione che in modo asincrono recuperare i dati dal file PHP. Creare la funzione di callback che elaborerà i dati e tracciare le icone sulla mappa. Ad esempio, digitare:
downloadPHPData("coordinates.php", function(data) {
var xml = data.responseXML;
marcatori var = xml.documentElement.getElementsByTagName ( "marker");
for (var i = 0; i & lt; markers.length; i ++) {
var city = marcatori [i] .getAttribute ( "città");
var point = new google.maps.LatLng (parseFloat (marcatori [i] .getAttribute ( "lat")), parseFloat (marcatori [i] .getAttribute ( "lng")));
var html = città + "," + marcatori [i] .getAttribute ( "disc");
var marcatore = new google.maps.Marker ({map, cartina, la posizione: punto, titolo: city});
bindInfoWindow (marcatore, carta, infowindow, html);
}
});
}
9 Creare la funzione per recuperare in modo asincrono i dati e passare alla funzione di callback. Ad esempio, digitare:
function downloadPHPData(URL, callback) {
richiesta var = window.ActiveXObject? new ActiveXObject ( "Microsoft.XMLHTTP"): new XMLHttpRequest;
request.onreadystatechange = function () {
if (request.readyState == 4) {
request.onreadystatechange = DoNothing;
callback (richiesta, request.status);
}
};
request.open ( 'GET', URL, true);
request.send (null);
}
funzione DoNothing () {
}
10 Creare la funzione di pop-up della finestra informativa quando un marcatore viene cliccato. Ad esempio, digitare:
function bindInfoWindow(marker, map, infoWindow, html) {
google.maps.event.addListener (marcatore, "click", function () {
infoWindow.setContent (html);
infoWindow.open (mappa, marcatore);
});
}
11 Chiudere il tag script, chiudere il tag head, e creare il codice HTML principale per stabilire la "div" per la mappa e per lanciare il "creare" funzione quando la pagina viene caricata. Ad esempio, digitare:
</ Script>
</ Head>
<Body onload = "Create ()">
<div id="map" style="width:800px; height:800px"></div>
</ Body>
</ Html>