Пример #1
0
 function extractXML($xml)
 {
     if (!$xml->children()) {
         return (string) $xml;
     }
     foreach ($xml->children() as $child) {
         $name = $child->getName();
         if (count($xml->{$name}) == 1) {
             $element[$name] = extractXML($child);
         } else {
             $element[][$name] = extractXML($child);
         }
     }
     return $element;
 }
Пример #2
0
<?php 
error_reporting(E_ERROR);
define(FORECAST_API, "64fc585d500232717d682f3b5126505e");
header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Methods: POST, GET, OPTIONS');
$req = $_GET["req"];
$address = $_GET['address'];
$degree = $_GET['degree'];
$result = extractXML($address, $degree);
echo "{$result}";
function extractXML($url, $degree)
{
    //$api="https://maps.google.com/maps/api/geocode/xml?";
    $api = "https://maps.googleapis.com/maps/api/geocode/xml?";
    $query = array('address' => $url, 'key' => 'AIzaSyDQueJ2wi4jkvVpg0DoKyNh6SweoOlbeo0');
    $link = $api . http_build_query($query);
    $xml = simplexml_load_file($link);
    //$xml = str_replace(array("\n", "\r", "\t"), '', $xml);
    $status = $xml->status;
    if ($status == 'OK') {
        $location = $xml->result->geometry->location;
        $lat = $location->lat;
        $lng = $location->lng;
        return extractJson($lat, $lng, $degree);
    } else {
        if ($status == 'ZERO_RESULTS' && isset($_POST['submit'])) {
            $result = array("status" => "ZERO_RESULTS");
            return json_encode($result);
        }
    }