通过调用用户手机内置的地理位置功能(而不是 IP)来获取用户当前位置


Get user current location by envoking his/her phone inbuilt geo location capabilities, not IP

我正在用核心php为一家商店构建一个移动网站,该网站将根据用户的当前位置显示其最近的商店。

我目前正在根据用户的IP获取当前位置,但它似乎并不准确。所以我想知道我是否可以调用inbulit智能手机功能来获取当前位置(请记住,这是一个移动网站而不是应用程序(。我尝试搜索堆栈溢出 没有得到任何相关内容。

任何正确方向的链接/建议都会很棒!

我不

相信你可以用PHP做到这一点,但HTML5有内置的功能。

使用navigator.geolocation将为您提供用户/电话的位置,并得到他们的许可。

navigator.geolocation.getCurentPosition(success, failure[, options]);
function success(location){
    <!-- do stuff here if user gave permission -->
    <!-- Latitude: location.coords.latitude -->
    <!-- Longitude: location.coords.longitude -->
    <!-- Accuracy in metters: location.coords.accuracy -->
}
function failure(){
    <!-- User did not give permission, use failback code -->
}

选项是可选的,但可能非常有用。您可以设置是否需要高精度以及位置的年龄。