获取手机的GPS位置[重复]

Posted

技术标签:

【中文标题】获取手机的GPS位置[重复]【英文标题】:Get GPS Location of Mobile Phone [duplicate] 【发布时间】:2013-04-05 10:08:15 【问题描述】:

我一直在 Google 和 SO 上寻找一种方法来获取使用带有 php 的手机的用户的 GPS 位置。但是,我发现的唯一解决方案是使用 javascript,当我可以将一些 PHP 代码添加到我现有的系统时,我宁愿不必使用 Javascript 做一些复杂的事情。

我的问题很简单:如何使用 PHP 而不是 Javascript 获取浏览我网站的用户的 GPS 位置?

另外: 如果我必须使用 Javascript,如何从 PHP 访问值?另外,有没有办法从这个 GPS 位置获取城市/国家,或者可能有其他方法来获取城市/国家?

【问题讨论】:

【参考方案1】:

您无法使用 PHP 获取 GPS 位置。

您可以使用 GeoLocation 来近似它(使用 IP 地址),但这是出了名的不可靠,最好避免。

另一种选择是使用 html5 中内置的位置 API。访问您的网站时,系统会询问那些使用功能强大的移动设备(或浏览器)的用户是否出于功能原因希望披露其位置,但您不能强迫用户透露:

function show_map(position) 
  var latitude = position.coords.latitude;
  var longitude = position.coords.longitude;
  // let's show a map or do something interesting!

值得一读的示例指南/概述是here(其中包括位置感知浏览工作原理的实时示例)。

位置信息在隐私方面是一个非常敏感的领域,因此手机制造商不允许自动披露您正在寻找的信息。

更多阅读资源:

W3C geolocation API geoPosition.js,地理定位 API 包装脚本 Internet Explorer 9 开发人员指南:Geolocation 一个 SO 问题:Web Geolocation API on the iPhone

【讨论】:

如何将此位置传递给 PHP 脚本?另外,如何从中获取实际位置(例如城市或国家/地区)?【参考方案2】:

无法通过 PHP 检索这些数据,请记住 PHP 是在服务器中执行的,而不是在客户端中执行的,因此您需要像 javascript 这样的客户端执行语言。

【讨论】:

但是,是否有任何 GPS 值通过 HTTP 请求发送?如果没有,我将如何将值从 Javascript 传递给 PHP? 你可以通过 AJAX 在 javascript 和 PHP 之间传递值 我怎样才能从 PHP 脚本中获取 Javascript 值呢?我可以看到如何将 PHP 值传递给 Javascript,但我该如何反其道而行之? 您需要进行 ajax 调用,然后将其存储在数据库或任何您想要的地方。

以上是关于获取手机的GPS位置[重复]的主要内容,如果未能解决你的问题,请参考以下文章

在没有互联网的情况下使用 Javascript 获取 GPS 位置 [重复]

Android获取当前位置的最佳方式[重复]

获取 GPS 位置坐标并存储在数组中 [重复]

Android:是不是有任何解决方案可以每次使用 GPS 或网络获取准确位置 [重复]

尝试获取 GPS 位置并将其显示在 TextView 中

轨道位置室内(带智能手机)[重复]