Jonlin hace 6 años
padre
commit
4c729b0f69
Se han modificado 1 ficheros con 25 adiciones y 88 borrados
  1. 25 88
      application/index/controller/User.php

+ 25 - 88
application/index/controller/User.php

@@ -332,94 +332,31 @@ class User extends Controller
 //    }
 
       public function browse_info(){
-        $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, "Baiduspider") > 0) {
-            $exp[0] = "百度";
-            $exp[1] = '蜘蛛';
-        }elseif (stripos($sys, "YisouSpider") > 0) {
-            $exp[0] = "一搜";
-            $exp[1] = '蜘蛛';
-        }elseif (stripos($sys, "Googlebot") > 0) {
-            $exp[0] = "谷歌";
-            $exp[1] = '蜘蛛';
-        }elseif (stripos($sys, "Android 4.3") > 0) {
-            $exp[0] = "安卓";
-            $exp[1] = '4.3';
-        }
-        elseif (stripos($sys, "MSIE") > 0) {
-            preg_match("/MSIEs+([^;)]+)+/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 if(stripos($sys,'AhrefsBot')>0){
-            $exp[0] = "AhrefsBot";
-            $exp[1] = '蜘蛛';
-        }else if(stripos($sys,'Safari')>0){
-            preg_match("/([d.]+)/", $sys, $safari);
-            $exp[0] = "Safari";
-            $exp[1] = $safari[1];
-        }else if(stripos($sys,'bingbot')>0){
-            $exp[0] = "必应";
-            $exp[1] = '蜘蛛';
-        }else if(stripos($sys,'WinHttp')>0){
-            $exp[0] = "windows";
-            $exp[1] = 'WinHttp 请求接口工具';
-        }else if(stripos($sys,'iPhone OS 10')>0){
-            $exp[0] = "iPhone";
-            $exp[1] = 'OS 10';
-        }else if(stripos($sys,'Sogou')>0){
-            $exp[0] = "搜狗";
-            $exp[1] = '蜘蛛';
-        }else if(stripos($sys,'HUAWEIM')>0){
-            $exp[0] = "华为";
-            $exp[1] = '手机端';
-        }else if(stripos($sys,'Dalvik')>0){
-            $exp[0] = "安卓";
-            $exp[1] = 'Dalvik虚拟机';
-        }else if(stripos($sys,'Mac OS X 10')>0){
-            $exp[0] = "MAC";
-            $exp[1] = 'OS X10';
-        }else if(stripos($sys,'Opera/9.8')>0){
-            $exp[0] = "Opera";
-            $exp[1] = '9.8';
-        }else if(stripos($sys,'JikeSpider')>0){
-            $exp[0] = "即刻";
-            $exp[1] = '蜘蛛';
-        }else if(stripos($sys,'Baiduspider')>0){
-            $exp[0] = "百度";
-            $exp[1] = '蜘蛛';
-        }
-        else {
-            $exp[0] = "";
-            $exp[1] = "";
-        }
-//        return $exp[0].' '.$exp[1];
-          return $exp[0];
-    }
+          if(!empty($_SERVER['HTTP_USER_AGENT'])){
+              $br = $_SERVER['HTTP_USER_AGENT'];
+              if (preg_match('/MSIE/i',$br)) {
+                  $br = 'MSIE';
+              }
+              elseif (preg_match('/Firefox/i',$br)) {
+                  $br = 'Firefox';
+              }
+              elseif (preg_match('/Chrome/i',$br)) {
+                  $br = 'Chrome';
+              }
+              elseif (preg_match('/Safari/i',$br)) {
+                  $br = 'Safari';
+              }
+              elseif (preg_match('/Opera/i',$br)) {
+                  $br = 'Opera';
+              }else {
+                  $br = 'Other';
+              }
+              return $br;
+          }
+          else{
+              return "unknow";
+          }
+      }
 
 
 }