如何使用用户机器的PHP获取经度和纬度?
如果北方是正值,我需要它是经度,如果是南方则是负值/
就纬度而言,如果是东方,那么它是正值,如果是西方则是负值.
我怎样才能做到这一点?
ade*_*neo 17
在服务器端进行地理定位的唯一方法是使用查找表进行IP地址.有一些服务可以为您提供此功能,因此您可以这样做:
$ip = !empty($_SERVER['HTTP_X_FORWARDED_FOR']) ? $_SERVER['HTTP_X_FORWARDED_FOR'] : $_SERVER['REMOTE_ADDR'];
$url = "http://freegeoip.net/json/$ip";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
$data = curl_exec($ch);
curl_close($ch);
if ($data) {
$location = json_decode($data);
$lat = $location->latitude;
$lon = $location->longitude;
$sun_info = date_sun_info(time(), $lat, $lon);
print_r($sun_info);
}
Run Code Online (Sandbox Code Playgroud)
但它并不总是非常准确.在javascript中,您可以访问HTML5地理位置API或Google地图,但根据服务条款,与Google进行反向地理编码要求您使用地图.
| 归档时间: |
|
| 查看次数: |
32775 次 |
| 最近记录: |