Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/447.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 获得网站访问者的最佳方式是什么;什么地方?_Php_Javascript_Geolocation_Ip Geolocation - Fatal编程技术网

Php 获得网站访问者的最佳方式是什么;什么地方?

Php 获得网站访问者的最佳方式是什么;什么地方?,php,javascript,geolocation,ip-geolocation,Php,Javascript,Geolocation,Ip Geolocation,在谷歌搜索之后,我发现许多解决方案似乎不起作用,或者需要用户的许可 寻找易于使用的东西,PHP或Javascript,并且不需要用户的许可。它不需要是最精确的。Google Analytics非常适合这一点(javascript) 编辑: 应该指出,谷歌分析有一个API来获取城市/国家信息和所有报告信息,如果你需要以编程方式使用它- 但如果这不是一个选项: 您可以使用PHP的$\u服务器['REMOTE\u ADDR'] 有了它,您可以使用PHP的GeoIP库对其进行地理定位:Google An

在谷歌搜索之后,我发现许多解决方案似乎不起作用,或者需要用户的许可


寻找易于使用的东西,PHP或Javascript,并且不需要用户的许可。它不需要是最精确的。

Google Analytics非常适合这一点(javascript)

编辑: 应该指出,谷歌分析有一个API来获取城市/国家信息和所有报告信息,如果你需要以编程方式使用它-

但如果这不是一个选项:

您可以使用PHP的
$\u服务器['REMOTE\u ADDR']


有了它,您可以使用PHP的GeoIP库对其进行地理定位:

Google Analytics非常适合这个(javascript)

编辑: 应该指出,谷歌分析有一个API来获取城市/国家信息和所有报告信息,如果你需要以编程方式使用它-

但如果这不是一个选项:

您可以使用PHP的
$\u服务器['REMOTE\u ADDR']

有了它,您可以使用PHP的GeoIP库对其进行地理定位:

这就是我使用的(您可以通过
$\u服务器['REMOTE\u ADDR']
获取IP并将其传递给函数):

这就是我使用的(您可以通过
$\u SERVER['REMOTE\u ADDR']
获取IP并将其传递给函数):


我认为非常重要的是要指出,通过php从MaxMind查询GEO IP数据库是一个很好的解决方案,如果该站点的流量超过个人站点的流量,那么您必须投资MaxMind许可证。拥有将MaxMind集成到高容量电子商务零售网站的经验,成本可能相当可观(尽管支付系统方面的好处非常值得)


还有一条评论。GeoIP仅适用于用户所连接的ISP本地DNS服务器的一般覆盖区域。它不是全球定位系统。它通常不会深入到街道层面。而且,如果用户通过代理、VPN等进行连接,那么数据/信息是无用的。

我认为非常重要的一点是,通过php从MaxMind查询地理IP数据库是一个很好的解决方案,如果该站点的流量超过个人站点的流量,则必须投资MaxMind许可证。拥有将MaxMind集成到高容量电子商务零售网站的经验,成本可能相当可观(尽管支付系统方面的好处非常值得)


还有一条评论。GeoIP仅适用于用户所连接的ISP本地DNS服务器的一般覆盖区域。它不是全球定位系统。它通常不会深入到街道层面。而且,如果用户通过代理、VPN等进行连接,则数据/信息是无用的。

请参阅右侧的相关问题,有人问了很多这是最佳方式吗?问问他们。否则,请使用GeoIP,并做好准备,在许多情况下,它会非常不准确。使用GeoIP,您将无法获得确切的位置。使用HTML5利用附近的Wifi接入点获取更精确的位置需要用户许可,你无法绕过这一点。请参阅右侧的相关问题,这是一个很好的解决方法?问问他们。否则,请使用GeoIP,并做好准备,在许多情况下,它会非常不准确。使用GeoIP,您将无法获得确切的位置。使用HTML5利用附近的Wifi接入点获取更准确的位置需要用户许可,你无法绕过这一点。我找不到任何关于获取和使用GA从上面提供的谷歌链接获取城市信息的信息。你能详细说明一下吗?谢谢,我找不到任何关于获取和使用GA从上面提供的谷歌链接中获取城市信息的信息。你能详细说明一下吗?谢谢
function GeoData($ip) 
    {   
        $Content    =       CurlGet("http://api.hostip.info/get_html.php?ip=" . $ip . "&position=true");
        $ContentArr =   explode("\n", $Content);

        $Stack      =   array();
        $Ctr        =   0;

        foreach($ContentArr as $Item)
        {
            if($Ctr == 2) 
            {
                $Ctr++;
                continue;
            }

            if($Ctr == 6)
                break;
            $SingleItemArr  =   explode(":", $Item);
            array_push($Stack, $SingleItemArr[1]);  
            $Ctr++;
        }

        $MappedStr      =   array("country" => $Stack[0], "city" => $Stack[1], "latitude" => $Stack[2], "longitude" => $Stack[3], "ip" => $Stack[4]);
        $JsonEncoded    =   json_encode($MappedStr);

        return $JsonEncoded;
    }