Peta Google API mengembalikan koordinat yang salah
P粉773659687
P粉773659687 2023-07-26 15:39:29
0
1
476
<p>Saya menggunakan fungsi PHP ini untuk mendapatkan koordinat tetapi ia sentiasa salah. Kadang-kadang dekat, kadang-kadang jauh dari tempat yang betul. </p> <pre class="brush:php;toolbar:false;">function getCoordinates($address, $city, $postalCode, $region, $province) { $url = 'https://maps.googleapis.com/maps/api/geocode/json?'; $params = array( 'alamat' => urlencode($alamat), 'komponen' => urlencode("locality:$city|administrative_area:$province"), 'kunci' => 'kunci_saya' ); $url .= http_build_query($params); $respons = file_get_contents($url); $data = json_decode($respons, true); jika ($data['status'] === 'OK') { $latitud = $data['hasil'][0]['geometri']['lokasi']['lat']; $longitud = $data['hasil'][0]['geometri']['lokasi']['lng']; kembali tatasusunan('latitud' => $latitud, 'longitud' => $longitud); } lain { kembali palsu; } }</pre> <p>Saya cuba menggunakan parameter dalam banyak cara tetapi sentiasa mendapat keputusan yang sama: koordinat yang salah. </p><p>Parameter ujian adalah seperti berikut:</p><p><br /></p> <pre class="brush:php;toolbar:false;">$address = 'VIA DUCHESSA JOLANDA' $city = 'MONCRIVELO' $province = 'VC' $kod pos = '13040'</pre> <p>Hasilnya ialah latitud: 45.0742756, longitud: 7.6613655</p><p>Yang betul hendaklah: latitud: 45.3307055, longitud: 7.9960788<<< ; /strong></p>
P粉773659687
P粉773659687

membalas semua(1)
P粉386318086

Maaf, koordinat kelihatan betul selepas menggunakan versi baharu ini.

function getCoordinates1($address, $city, $postalCode, $region, $province)
{
    $url = 'https://maps.googleapis.com/maps/api/geocode/json?';
    $addressString = "$address, $postalCode, $city, $province, $region";
    $params = array(
        'address' => urlencode($addressString),
        'key' => 'my-code'
    );
    $url .= http_build_query($params);
    $response = file_get_contents($url);
    $data = json_decode($response, true);
    if ($data['status'] === 'OK') {
        $latitude = $data['results'][0]['geometry']['location']['lat'];
        $longitude = $data['results'][0]['geometry']['location']['lng'];
        return array('latitude' => $latitude, 'longitude' => $longitude);
    } else {
        return false;
    }
}
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan