住所から座標にしたい

googleが12月26日現在住所からマーカー(ピン)を立てなくしたので
座標でしかマーカー表示できなくなっている。と思う。

ので座標を無料で撮らねばならないので


<?php

function getCoordinates($address) {
    $url = "https://nominatim.openstreetmap.org/search?format=json&q=" . urlencode($address);

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_HTTPHEADER, [
        "User-Agent: YourAppName/1.0 (your-email@example.com)"
    ]);

    $response = curl_exec($ch);
    $http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
    curl_close($ch);

    if ($http_code !== 200) {
        echo "HTTP Error: " . $http_code;
        return null;
    }

    $data = json_decode($response, true);

    if (!empty($data)) {
        $lat = $data[0]['lat'];
        $lng = $data[0]['lon'];
        return ['lat' => $lat, 'lng' => $lng];
    } else {
        echo "No data found for the address.";
        return null;
    }
}

// 使用例
$address = "東京都港区芝大門一丁目";
$coordinates = getCoordinates($address);

if ($coordinates) {
    echo "緯度: " . $coordinates['lat'] . ", 経度: " . $coordinates['lng'];
}

でひろう。以上

カテゴリー: php

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です