最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

php如何获取客户端信息

来源:动视网 责编:小采 时间:2020-11-27 14:56:12
文档

php如何获取客户端信息

php如何获取客户端信息:用于获取用户客户端信息(推荐学习:PHP视频教程)<php class userPCInfo{ //获取客户端浏览器 public static function get_client_browser(){ $sys = $_SERVER['HTTP_USER_AGENT']; //获取用户代理字符串 i
推荐度:
导读php如何获取客户端信息:用于获取用户客户端信息(推荐学习:PHP视频教程)<php class userPCInfo{ //获取客户端浏览器 public static function get_client_browser(){ $sys = $_SERVER['HTTP_USER_AGENT']; //获取用户代理字符串 i


用于获取用户客户端信息(推荐学习:PHP视频教程)

<?php

class userPCInfo{
//获取客户端浏览器
public static function get_client_browser(){
 $sys = $_SERVER['HTTP_USER_AGENT']; //获取用户代理字符串
 if (stripos($sys, "Firefox/") > 0) {
 preg_match("/Firefox\/([^;)]+)+/i", $sys, $b);
 $exp[0] = "Firefox";
 $exp[1] = $b[1]; //获取火狐浏览器的版本号
 } elseif (stripos($sys, "Maxthon") > 0) {
 preg_match("/Maxthon\/([\d\.]+)/", $sys, $aoyou);
 $exp[0] = "傲游";
 $exp[1] = $aoyou[1];
 } elseif (stripos($sys, "MSIE") > 0) {
 preg_match("/MSIE\s+([^;)]+)+/i", $sys, $ie);
 $exp[0] = "IE";
 $exp[1] = $ie[1]; //获取IE的版本号
 } elseif (stripos($sys, "OPR") > 0) {
 preg_match("/OPR\/([\d\.]+)/", $sys, $opera);
 $exp[0] = "Opera";
 $exp[1] = $opera[1];
 } elseif(stripos($sys, "Edge") > 0) {
 //win10 Edge浏览器 添加了chrome内核标记 在判断Chrome之前匹配
 preg_match("/Edge\/([\d\.]+)/", $sys, $Edge);
 $exp[0] = "Edge";
 $exp[1] = $Edge[1];
 } elseif (stripos($sys, "Chrome") > 0) {
 preg_match("/Chrome\/([\d\.]+)/", $sys, $google);
 $exp[0] = "Chrome";
 $exp[1] = $google[1]; //获取google chrome的版本号
 } elseif(stripos($sys,'rv:')>0 && stripos($sys,'Gecko')>0){
 preg_match("/rv:([\d\.]+)/", $sys, $IE);
 $exp[0] = "IE";
 $exp[1] = $IE[1];
 }else {
 $exp[0] = "未知浏览器";
 $exp[1] = "";
 }
 return $exp;
}

//获取客户端操作系统
public static function get_client_os(){
 $agent = $_SERVER['HTTP_USER_AGENT'];
 $os = false;
 if (preg_match('/win/i', $agent) && strpos($agent, '95')){
 $os = 'Windows 95';
 }else if (preg_match('/win 9x/i', $agent) && strpos($agent, '4.90')){
 $os = 'Windows ME';
 }else if (preg_match('/win/i', $agent) && preg_match('/98/i', $agent)){
 $os = 'Windows 98';
 }else if (preg_match('/win/i', $agent) && preg_match('/nt 6.0/i', $agent)){
 $os = 'Windows Vista';
 }else if (preg_match('/win/i', $agent) && preg_match('/nt 6.1/i', $agent)){
 $os = 'Windows 7';
 }else if (preg_match('/win/i', $agent) && preg_match('/nt 6.2/i', $agent)){
 $os = 'Windows 8';
 }else if(preg_match('/win/i', $agent) && preg_match('/nt 10.0/i', $agent)){
 $os = 'Windows 10';#添加win10判断
 }else if (preg_match('/win/i', $agent) && preg_match('/nt 5.1/i', $agent)){
 $os = 'Windows XP';
 }else if (preg_match('/win/i', $agent) && preg_match('/nt 5/i', $agent)){
 $os = 'Windows 2000';
 }else if (preg_match('/win/i', $agent) && preg_match('/nt/i', $agent)){
 $os = 'Windows NT';
 }else if (preg_match('/win/i', $agent) && preg_match('/32/i', $agent)){
 $os = 'Windows 32';
 }else if (preg_match('/linux/i', $agent)){
 $os = 'Linux';
 }else if (preg_match('/unix/i', $agent)){
 $os = 'Unix';
 }else if (preg_match('/sun/i', $agent) && preg_match('/os/i', $agent)){
 $os = 'SunOS';
 }else if (preg_match('/ibm/i', $agent) && preg_match('/os/i', $agent)){
 $os = 'IBM OS/2';
 }else if (preg_match('/Mac/i', $agent) && preg_match('/PC/i', $agent)){
 $os = 'Macintosh';
 }else if (preg_match('/PowerPC/i', $agent)){
 $os = 'PowerPC';
 }else if (preg_match('/AIX/i', $agent)){
 $os = 'AIX';
 }else if (preg_match('/HPUX/i', $agent)){
 $os = 'HPUX';
 }else if (preg_match('/NetBSD/i', $agent)){
 $os = 'NetBSD';
 }else if (preg_match('/BSD/i', $agent)){
 $os = 'BSD';
 }else if (preg_match('/OSF1/i', $agent)){
 $os = 'OSF1';
 }else if (preg_match('/IRIX/i', $agent)){
 $os = 'IRIX';
 }else if (preg_match('/FreeBSD/i', $agent)){
 $os = 'FreeBSD';
 }else if (preg_match('/teleport/i', $agent)){
 $os = 'teleport';
 }else if (preg_match('/flashget/i', $agent)){
 $os = 'flashget';
 }else if (preg_match('/webzip/i', $agent)){
 $os = 'webzip';
 }else if (preg_match('/offline/i', $agent)){
 $os = 'offline';
 }else{
 $os = '未知操作系统';
 }
 return $os;
}
//获取ip地址
public static function get_ip() {
 //判断服务器是否允许$_SERVER
 if (isset($_SERVER)) {
 if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {
 $realip = $_SERVER['HTTP_X_FORWARDED_FOR'];
 } elseif (isset($_SERVER['HTTP_CLIENT_IP'])) {
 $realip = $_SERVER['HTTP_CLIENT_IP'];
 } else {
 $realip = $_SERVER['REMOTE_ADDR'];
 }
 } else {
 //不允许就使用getenv获取
 if (getenv("HTTP_X_FORWARDED_FOR")) {
 $realip = getenv("HTTP_X_FORWARDED_FOR");
 } elseif (getenv("HTTP_CLIENT_IP")) {
 $realip = getenv("HTTP_CLIENT_IP");
 } else {
 $realip = getenv("REMOTE_ADDR");
 }
 }
 return $realip;
}
//获取当前ip所在城市
public static function GetIpLookup($ip = ''){
 if(empty($ip)){
 return '请输入IP地址';
 }
 $test= 'http://ip.taobao.com/service/getIpInfo.php?ip='.$ip;
 $res = @file_get_contents($test);
 return $res;
}
}

文档

php如何获取客户端信息

php如何获取客户端信息:用于获取用户客户端信息(推荐学习:PHP视频教程)<php class userPCInfo{ //获取客户端浏览器 public static function get_client_browser(){ $sys = $_SERVER['HTTP_USER_AGENT']; //获取用户代理字符串 i
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top