我们可以从 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】:请记住,从客户端生成的任何内容都可能被欺骗。据我所知,$_SERVER
或 get_browser()
函数不会收集地理位置。
您可以使用 html 做的一件事是使用 GeoLocation API navigator.geolocation
提取一些所需的信息并使用 async ajax
call 将其发送到服务器脚本。
【讨论】:
【参考方案2】:从技术上讲,是的。您使用 $_SERVER['REMOTE_ADDR'] 获得 IP。如果没有像 MaxMind 的 GeoIP 数据库这样的 IP 查找 API,这不会告诉您任何信息。
【讨论】:
以上是关于我们可以从 php 中的 $_SERVER 从客户端浏览器中检索地理定位信息吗?的主要内容,如果未能解决你的问题,请参考以下文章
如何从C扩展名(PHP源)读取和写入PHP超全局变量? [处于保留状态]