Google directions API

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Johhny Westra

Johhny Westra

26/05/2014 16:57:23
Quote Anchor link
Goedemiddag,

Om me iets meer te verdiepen in de Google Directions API wou ik een webapplicatie maken m.b.t. dit onderwerp.
Ik heb in gedachte om een applicatie te maken waar je een adres in kunt vullen. Vervolgens wordt het dichtstbijzijnde station gezocht voor dat adres.

Om me eerst te oriënteren heb ik er eerst voor gekozen om een hardcoded array te maken met hierin een aantal plaatsen i.p.v. stations.

Mijn code lijkt op het eerste gezicht te werken maar af en toe geeft hij de volgende
Notice: Trying to get property of non-object in C:\Users\ZeroSorry\Desktop\USB Webserver\root\functions.php on line 39

Lijn 39 komt overeen met het onderstaande lijnnummer 39.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
<?php
function findClosestStationByCar($adres) {
    $nameStation = "";
    $viableStations = array(
        "Almelo",
        "Almere",
    );

    $shortestDistance = 1000000;

    foreach ($viableStations as $value) {
        $params = array(
            'origin' => $adres,
            'destination' => $value,
            'mode' => 'driving',
            'sensor' => 'true',
            'units' => 'metric',
            'language' => 'nl'
        );


        $params_string = "";
        foreach ($params as $var => $val) {
            $params_string .= '&' . $var . '=' . urlencode($val);
        }


        // Request URL
        $url = "https://maps.googleapis.com/maps/api/directions/json?" . ltrim($params_string, '&');

        // Make our API request
        $curl = curl_init();
        curl_setopt($curl, CURLOPT_URL, $url);
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
        $return = curl_exec($curl);
        curl_close($curl);

        // Parse the JSON response
        $directions = json_decode($return);

        if ($directions->routes[0]->legs[0]->distance->value < $shortestDistance) {  
            $shortestDistance = $directions->routes[0]->legs[0]->distance->value;
            $nameStation = $value;
        }
    }

    
    $returnArray = array(
        $nameStation,
        $shortestDistance
    );
    
    return $returnArray;
}

?>


Ik heb er al wat informatie over gevonden maar geen een lijkt specifiek overeen te komen met mijn geval. Zijn er mensen die mij kunnen helpen?

Alvast bedankt.
Gewijzigd op 26/05/2014 17:02:12 door Johhny Westra
 
Er zijn nog geen reacties op dit bericht.



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.