基于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虚拟按键失效...