2012-02-20 10 views
8

È possibile salvare l'API della mappa di google come immagine sul mio server?Come faccio a salvare l'immagine API della mappa immagine google sul mio server

Sfondo: Google map image API sta generando un'immagine della posizione desiderata. Ogni volta che chiedo l'URL esterno. Posso salvare l'immagine della mappa come immagine (png, gif) sul mio server? Ciò migliorerà la velocità della mia pagina web. Ho provato con l'arricciatura ma non è riuscito a copiare l'immagine

URL richiesto http://maps.googleapis.com/maps/api/staticmap?center=15719+OAKLEAF+RUN+DRIVE%2CLITHIA%2CFL%2C33547%2CUS&zoom=8&size=150x100&markers=color:blue|label:S|11211&sensor=false

+0

Assicurati di leggere i termini di servizio, come quello che si la descrizione potrebbe benissimo violarli. –

+0

@Mano Marks Sì. Siamo in grado di richiedere un massimo di 1000 query per utente –

+1

Sono più interessato a salvarle sul server –

risposta

9

si può provare qualcosa di simile:

<?php 
$image = file_get_contents('http://maps.googleapis.com/maps/api/staticmap?center=15719%20OAKLEAF%20RUN%20DRIVE,LITHIA,FL,33547,US&zoom=8&size=150x100&markers=color%3ablue%7Clabel%3aS%7C11211&sensor=false'); 
$fp = fopen('ae.png', 'w+'); 

fputs($fp, $image); 
fclose($fp); 
unset($image); 
?> 
+0

Questa risposta è ancora valida con l'API corrente? Sto provando a codificare Base64 l'immagine dall'API Staticmaps e file_get_contents () restituisce sempre false. –

0

Controllare l'API di Google Maps per cellulari. Lì riceverai un'immagine invece di una mappa HTML.

3

si può facilmente leggere che url usando file_get_contents

frammento per questo sarà

$url='http://maps.googleapis.com/maps/api/staticmap?center=15719+OAKLEAF+RUN+DRIVE%2CLITHIA%2CFL%2C33547%2CUS&zoom=8&size=150x100&markers=color:blue|label:S|11211&sensor=false'; 

file_put_contents('filename.png',file_get_contents($url)); 
1

Questo è veramente facile

basta usare

immagine
if(@copy('http://maps.googleapis.com/maps/api/staticmap?center=15719%20OAKLEAF%20RUN%20DRIVE,LITHIA,FL,33547,US&zoom=8&size=150x100&markers=color%3ablue%7Clabel%3aS%7C11211&sensor=false', '/where-u-want-to-save/your-given-name.png')){ 
echo "image-saved"; 
}else{ 
echo "failed"; } 

ritorna sempre in formato png si può dare all'immagine un nome univoco per valore lng lat o usando il tempo funzione PHP()

Problemi correlati