基于HTTP请求访问一个网站的时候,会附带HTTP头内容。比如你从哪个网站跳过来的等等,这些设计HTTP的底层东西,说的话肯定还没网上那些网站说的清楚。我们只需要知道就行了。
现在我们只需要知道,当我们访问网站的时候,你的Ip、浏览器版本、浏览器型号、系统等等都发送到对应的网站了,而我们只需要获取下,然后整理后输出就是你满看到的效果了。
首先,我们来看看代码:
<?php namespace Home\Controller; use Think\Controller; class TestController extends Controller { public function index(){ $user_agent = $_SERVER['HTTP_USER_AGENT']; var_dump($user_agent); $this->display(); } } ?>
如果大家不是TP的环境也没事的。直接在PHP环境下打印
$user_agent = $_SERVER['HTTP_USER_AGENT']; var_dump($user_agent);
然后就会在浏览器上看到
其中我们认真看代码,别慌。
Firefox 代表的是浏览器
Windows NT 6.3 代表的WIN 8.1
$_SERVER的参数还有很多的,具体可以看这里
然后我们需要一个函数,在前端就可以输出了。
function getOS(){ $os=''; $Agent=$_SERVER['HTTP_USER_AGENT']; if (eregi('win',$Agent)&&strpos($Agent, '95')){ $os='Win 95'; }elseif(eregi('win 9x',$Agent)&&strpos($Agent, '4.90')){ $os='Win ME'; }elseif(eregi('win',$Agent)&&ereg('98',$Agent)){ $os='Win 98'; }elseif(eregi('win',$Agent)&&eregi('nt 5.0',$Agent)){ $os='Win 2000'; }elseif(eregi('win',$Agent)&&eregi('nt 6.0',$Agent)){ $os='Win Vista'; }elseif(eregi('win',$Agent)&&eregi('nt 6.1',$Agent)){ $os='Win 7'; }elseif(eregi('win',$Agent)&&eregi('nt 5.1',$Agent)){ $os='Win XP'; }elseif(eregi('win',$Agent)&&eregi('nt 6.2',$Agent)){ $os='Win 8'; }elseif(eregi('win',$Agent)&&eregi('nt 6.3',$Agent)){ $os='Win 8.1'; }elseif(eregi('win',$Agent)&&eregi('nt',$Agent)){ $os='Win NT'; }elseif(eregi('win',$Agent)&&ereg('32',$Agent)){ $os='Win 32'; }elseif(ereg('Mi',$Agent)){ $os='小米'; }elseif(eregi('Android',$Agent)&&ereg('LG',$Agent)){ $os='LG'; }elseif(eregi('Android',$Agent)&&ereg('M1',$Agent)){ $os='魅族'; }elseif(eregi('Android',$Agent)&&ereg('MX4',$Agent)){ $os='魅族4'; }elseif(eregi('Android',$Agent)&&ereg('M3',$Agent)){ $os='魅族'; }elseif(eregi('Android',$Agent)&&ereg('M4',$Agent)){ $os='魅族'; }elseif(eregi('Android',$Agent)&&ereg('H',$Agent)){ $os='华为'; }elseif(eregi('Android',$Agent)&&ereg('vivo',$Agent)){ $os='Vivo'; }elseif(eregi('Android',$Agent)){ $os='Android'; }elseif(eregi('linux',$Agent)){ $os='Linux'; }elseif(eregi('unix',$Agent)){ $os='Unix'; }elseif(eregi('iPhone',$Agent)){ $os='iPhone'; }else if(eregi('sun',$Agent)&&eregi('os',$Agent)){ $os='SunOS'; }elseif(eregi('ibm',$Agent)&&eregi('os',$Agent)){ $os='IBM OS/2'; }elseif(eregi('Mac',$Agent)&&eregi('PC',$Agent)){ $os='Macintosh'; }elseif(eregi('PowerPC',$Agent)){ $os='PowerPC'; }elseif(eregi('AIX',$Agent)){ $os='AIX'; }elseif(eregi('HPUX',$Agent)){ $os='HPUX'; }elseif(eregi('NetBSD',$Agent)){ $os='NetBSD'; }elseif(eregi('BSD',$Agent)){ $os='BSD'; }elseif(ereg('OSF1',$Agent)){ $os='OSF1'; }elseif(ereg('IRIX',$Agent)){ $os='IRIX'; }elseif(eregi('FreeBSD',$Agent)){ $os='FreeBSD'; }elseif($os==''){ $os='Unknown'; } return $os; }
这里面是我整理的东西,可能有些手机或者系统显示不正常。这就需要大家自己去寻找完善了。
如果你显示的系统和你的实际系统不符,要么是浏览器代理了。要么就请留言给我添加。谢谢。
如果不一样,请访问:这里 然后复制代码和自己手机或者系统型号告诉我。我会及时更新的。
上一篇: 更新-1.7版本手机浏览文章BUG...
下一篇: 小米4虚拟按键失效...