• 感谢大家访问本站,希望本站的内容可以帮助到大家!

  • 计算机图形学与计算几何经典必备书单整理,下载链接可参考:https://www.stubbornhuang.com/1256/

  • 本站由于前段时间遭受到大量临时和国外邮箱注册,所以对可注册的邮箱类型进行了限制!

  • 欢迎大家交换友链,可在https://www.stubbornhuang.com/申请友情链接进行友链交换申请!

  • 问题反馈可发送邮件到stubbornhuang@qq.com

  • 如果觉得本站的内容有帮助,可以考虑打赏博主哦!

  • 在本站开通年度VIP,无限制下载本站资源和阅读本站文章

  • 工资「喂饱肚子」,副业「养活灵魂」!

  • 本站会放置Google广告用于维持域名以及网站服务器费用。

Php – 获取用户的ip地址、操作系统、浏览器类型、入口页地址、当前访问页面地址等信息

PHP 发布于2023-09-20 阅读 1,824次 0次评论 0次点赞 本文共3157个字,阅读需要8分钟。

1 获取当前访客用户画像信息

php可以获取当前访客的ip地址,所访问的页面url,入口页url,访客的操作系统、访客使用何种浏览器访问该页面,这对我们掌握用户特征,调整网站内容结构具有重要的作用。

1.1 获取用户ip地址

通过以下代码获取用户ip地址

// 获取访问者IP地址
$ip = '0.0.0.0';
if (getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_IP") , "unknown")) {
    $ip = getenv("HTTP_CLIENT_IP");
} else if (getenv("HTTP_X_FORWARDED_FOR") && strcasecmp(getenv("HTTP_X_FORWARDED_FOR") , "unknown")) {
    $ip = getenv("HTTP_X_FORWARDED_FOR");
} else if (getenv("REMOTE_ADDR") && strcasecmp(getenv("REMOTE_ADDR") , "unknown")) {
    $ip = getenv("REMOTE_ADDR");
} else if (isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], "unknown")) {
    $ip = $_SERVER['REMOTE_ADDR'];
} else {
    $ip = "unknown";
}

1.2 获取操作系统类型

通过以下代码获取用户操作系统类型

$userAgent = empty($_SERVER['HTTP_USER_AGENT']) ? 'null' : $_SERVER['HTTP_USER_AGENT'];
// 判断访问系统
$system = "unknown";
$ios_regex="/(iPhone OS|iPad)/i";
if(false !== stripos($userAgent, 'Android')){
    $system = "Android";
}else if(false !== stripos($userAgent, 'Windows Phone')){
    $system = "Windows Phone";
}else if(false !== stripos($userAgent, 'Windows NT')){
    $system = "Windows";
}else if(preg_match($ios_regex, $userAgent)){
    $system = "IOS";
}else if(false !== stripos($userAgent, 'Mac')){
    $system = "MacOS";
}else if(false !== stripos($userAgent, 'Linux')){
    $system = "Linux";
}else if(false !== stripos($userAgent, 'Unix')){
    $system = "Unix";
}

1.3 获取用户使用的浏览器类型

通过以下代码获取用户浏览器类型

$userAgent = empty($_SERVER['HTTP_USER_AGENT']) ? 'null' : $_SERVER['HTTP_USER_AGENT'];
$client = "unknown";
$ie_regex="/(MSIE|Trident)/i";
if(stripos($userAgent, 'MicroMessenger')){
    $client = "WeiXin";
}else if(stripos($userAgent, 'AlipayClient')){
    $client = "Alipay";
}else if(stripos($userAgent, 'QQTheme')){
    $client = "QQ";
}else if(stripos($userAgent, 'HeyTapBrowser')){
    $client = "HeyTap";
}else if(stripos($userAgent, 'VivoBrowser')){
    $client = "Vivo";
}else if(stripos($userAgent, 'MQQBrowser')){
    $client = "QQ浏览器移动端";
}else if(stripos($userAgent, 'MQQBrowser')){
    $client = "QQ浏览器";
}else if(stripos($userAgent, 'baiduboxapp')){
    $client = "百度app";
}else if(stripos($userAgent, 'weibo')){
    $client = "WeiBo";
}else if(stripos($userAgent, 'iqiyi')){
    $client = "爱奇艺";
}else if(stripos($userAgent, 'aweme')){
    $client = "抖音";
}else if(stripos($userAgent, 'kdtUnion_iting')){
    $client = "喜马拉雅";
}else if(stripos($userAgent, 'UCBrowser')){
    $client = "UC";
}else if(stripos($userAgent, 'DingTalk')){
    $client = "钉钉";
}else if(stripos($userAgent, 'SamsungBrowser')){
    $client = "三星浏览器";
}else if(stripos($userAgent, 'HUAWEIEVA')){
    $client = "华为浏览器";
}else if(stripos($userAgent, 'NokiaBrowser')){
    $client = "诺基亚浏览器";
}else if(stripos($userAgent, 'Opera')){
    $client = "Opera";
}else if(stripos($userAgent, 'Firefox')){
    $client = "Firefox";
}else if(stripos($userAgent, 'Chrome')){
    $client = "Chrome";
}else if(stripos($userAgent, 'Safari')){
    $client = "Safari";
}else if(preg_match($ie_regex, $userAgent)){
    $client = "IE";
}

1.4 获取用户所使用的语言

通过以下代码获取用户所使用的语言

$lang = "unknown";
if (!empty($_SERVER['HTTP_ACCEPT_LANGUAGE'])) {
    $lang = $_SERVER['HTTP_ACCEPT_LANGUAGE'];
    $lang = substr($lang, 0, 5);
    if (preg_match("/zh-cn/i", $lang)) {
        $lang = "简体中文";
    } elseif (preg_match("/zh/i", $lang)) {
        $lang = "繁体中文";
    } else {
        $lang = "English";
    }
}

1.5 获取用户访问网站的入口页url

通过以下代码获取用户用户访问网站的入口页url

$referer_url = $_SERVER['HTTP_REFERER'];

1.6 获取用户当前访问的页面url

通过以下代码获取用户当前访问的页面url

$current_page_url = 'https://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];

参考

欢迎扫码关注我的微信公众号,及时获取文章更新

微信公众号二维码

本文作者:StubbornHuang

版权声明:本文为站长原创文章,如果转载请注明原文链接!

原文标题:Php – 获取用户的ip地址、操作系统、浏览器类型、入口页地址、当前访问页面地址等信息

原文链接:https://www.stubbornhuang.com/2809/

发布于:2023年09月20日 13:55:18

修改于:2023年09月20日 13:55:18

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

文章末尾
上一篇
Python - ImportError urllib3 v2.0 only supports OpenSSL 1.1.1+, currently the ‘ssl‘
Python
下一篇
Duilib - 设置和获取控件的自定义属性
Duilib
当前分类随机文章推荐

发表评论

您必须 [ 登录 ] 才能发表留言!

关注我们的公众号

微信公众号