我们可以从 php 中的 $_SERVER 从客户端浏览器中检索地理定位信息吗?

Posted

技术标签:

【中文标题】我们可以从 php 中的 $_SERVER 从客户端浏览器中检索地理定位信息吗?【英文标题】:can we retrieve the geo-localization info from the client browser from the $_SERVER in php? 【发布时间】:2013-04-25 14:51:27 【问题描述】:

一些现代浏览器无法激活(或不激活)地理定位。 那么,当它被激活时,我们怎样才能像在 $_SERVER 变量中一样从 php 服务器中检索它?

有没有像用户代理这样的本地化特殊常量?

感谢帮助

【问题讨论】:

Have a look, and find out 【参考方案1】:

请记住,从客户端生成的任何内容都可能被欺骗。据我所知,$_SERVERget_browser() 函数不会收集地理位置。

您可以使用 html 做的一件事是使用 GeoLocation API navigator.geolocation 提取一些所需的信息并使用 async ajaxcall 将其发送到服务器脚本。

【讨论】:

【参考方案2】:

从技术上讲,是的。您使用 $_SERVER['REMOTE_ADDR'] 获得 IP。如果没有像 MaxMind 的 GeoIP 数据库这样的 IP 查找 API,这不会告诉您任何信息。

【讨论】:

以上是关于我们可以从 php 中的 $_SERVER 从客户端浏览器中检索地理定位信息吗?的主要内容,如果未能解决你的问题,请参考以下文章

如何从C扩展名(PHP源)读取和写入PHP超全局变量? [处于保留状态]

PHP中的超级全局变量

PHP获取客户端的IP地址

可以从 sql server 中的 sproc 返回到 ADO.NET 应用程序的最大数据量是多少

PHP 可以获取客户端哪些访问信息

从 Python 中的相对路径导入