欢迎来 起落博客 加入收藏 设为主页

wordpress教程:博客评论实现用户操作系统&浏览器信息显示



原理是根据评论者留下的UserAgent字串进行判断找出与之匹配的操作系统浏览器并输出

添加以下到模板的functions.php文件中

function user_agent($ua){
//开始解析操作系统
$os = null;
if(preg_match(‘/Windows 95/i’,$ua) || preg_match(‘/Win95/’,$ua)){
$os=”Windows 95″;
}elseif(preg_match(‘/Windows NT 5.0/i’,$ua) || preg_match(‘/Windows 2000/i’, $ua)){
$os=”Windows 2000″;
}elseif(preg_match(‘/Win 9x 4.90/i’,$ua) || preg_match(‘/Windows ME/i’, $ua)){
$os=”Windows ME”;
}elseif(preg_match(‘/Windows.98/i’,$ua) || preg_match(‘/Win98/i’, $ua)){
$os = “Windows 98″;
}elseif(preg_match(‘/Windows NT 6.0/i’,$ua)){
$os=”Windows Vista”;
}elseif(preg_match(‘/Windows NT 6.1/i’,$ua)){
$os=”Windows 7″;
}elseif(preg_match(‘/Windows NT 5.1/i’,$ua)){
$os = “Windows XP”;
}elseif(preg_match(‘/Windows NT 5.2/i’,$ua) && preg_match(‘/Win64/i’,$ua)){
$os=”Windows XP 64 bit”;
}elseif(preg_match(‘/Windows NT 5.2/i’,$ua)){
$os=”Windows Server 2003″;
}elseif(preg_match(‘/Mac_PowerPC/i’,$ua)){
$os=”Mac OS”;
}elseif(preg_match(‘/Windows Phone/i’,$ua)){
$os=”windows phone7″;
}elseif(preg_match(‘/Windows NT 4.0/i’,$ua) || preg_match(‘/WinNT4.0/i’,$ua)){
$os=”Windows NT 4.0″;
}elseif(preg_match(‘/Windows NT/i’,$ua) || preg_match(‘/WinNT/i’,$ua)){
$os=”Windows NT”;
}elseif(preg_match(‘/Windows CE/i’,$ua)){
$os=”Windows CE”;
}elseif(preg_match(‘/ipad/i’,$ua)){
$os=”iPad”;
}elseif(preg_match(‘/Touch/i’,$ua)){
$os=”Touchw”;
}elseif(preg_match(‘/Symbian/i’,$ua) || preg_match(‘/SymbOS/i’,$ua)){
$os=”Symbian OS”;
}elseif(preg_match(‘/PalmOS/i’,$ua)){
$os=”Palm OS”;
}elseif(preg_match(‘/QtEmbedded/i’,$ua)){
$os=”Qtopia”;
}elseif(preg_match(‘/Ubuntu/i’,$ua)){
$os=”Ubuntu Linux”;
}elseif(preg_match(‘/Gentoo/i’,$ua)){
$os=”Gentoo Linux”;
}elseif(preg_match(‘/Fedora/i’,$ua)){
$os=”Fedora Linux”;
}elseif(preg_match(‘/FreeBSD/i’,$ua)){
$os=”FreeBSD”;
}elseif(preg_match(‘/NetBSD/i’,$ua)){
$os=”NetBSD”;
}elseif(preg_match(‘/OpenBSD/i’,$ua)){
$os=”OpenBSD”;
}elseif(preg_match(‘/SunOS/i’,$ua)){
$os=”SunOS”;
}elseif(preg_match(‘/Linux/i’,$ua)){
$os=”Linux”;
}elseif(preg_match(‘/Mac OS X/i’,$ua)){
$os=”Mac OS X”;
}elseif(preg_match(‘/Macintosh/i’,$ua)){
$os=”Mac OS”;
}elseif(preg_match(‘/Unix/i’,$ua)){
$os=”Unix”;
}elseif(preg_match(‘#Nokia([a-zA-Z0-9.]+)#i’,$ua,$matches)){
$os=”Nokia”.$matches[1];
}elseif(preg_match(‘/Mac OS X/i’,$ua)){
$os=”Mac OS X”;
}else{
$os=’未知的操作系统’;
}
//开始解析浏览器
if(preg_match(‘#(Camino|Chimera)[ /]([a-zA-Z0-9.]+)#i’,$ua,$matches)){
$browser = ‘Camino ‘.$matches[2];
}elseif(preg_match(‘#SE 2([a-zA-Z0-9.]+)#i’,$ua,$matches)){
$browser=’搜狗浏览器 2′.$matches[1];
}elseif(preg_match(‘#360([a-zA-Z0-9.]+)#i’,$ua,$matches)){
$browser=’360浏览器 ‘.$matches[1];
}elseif (preg_match(‘#Maxthon( |\/)([a-zA-Z0-9.]+)#i’,$ua,$matches)){
$browser=’Maxthon ‘.$matches[2];
}elseif (preg_match(‘#Chrome/([a-zA-Z0-9.]+)#i’,$ua,$matches)){
$browser=’Chrome ‘.$matches[1];
}elseif (preg_match(‘#Safari/([a-zA-Z0-9.]+)#i’,$ua,$matches)){
$browser=’Safari ‘.$matches[1];
}elseif(preg_match(‘#opera mini#i’, $ua)) {
preg_match(‘#Opera/([a-zA-Z0-9.]+)#i’, $ua, $matches);
$browser=’Opera Mini ‘.$matches[1];
}elseif(preg_match(‘#Opera.([a-zA-Z0-9.]+)#i’,$ua,$matches)){
$browser=’Opera ‘.$matches[1];
}elseif(preg_match(‘#(j2me|midp)#i’, $ua)) {
$browser=”J2ME/MIDP Browser”;
}elseif(preg_match(‘/GreenBrowser/i’, $ua)){
$browser=’GreenBrowser’;
}elseif (preg_match(‘#TencentTraveler ([a-zA-Z0-9.]+)#i’,$ua,$matches)){
$browser=’腾讯TT浏览器 ‘.$matches[1];
}elseif(preg_match(‘#UCWEB([a-zA-Z0-9.]+)#i’,$ua,$matches)){
$browser=’UCWEB ‘.$matches[1];
}elseif(preg_match(‘#MSIE ([a-zA-Z0-9.]+)#i’,$ua,$matches)){
$browser=’Internet Explorer ‘.$matches[1];
}elseif(preg_match(‘#avantbrowser.com#i’,$ua)){
$browser=’Avant Browser’;
}elseif(preg_match(‘#PHP#’, $ua, $matches)){
$browser=’PHP’;
}elseif(preg_match(‘#danger hiptop#i’,$ua,$matches)){
$browser=’Danger HipTop’;
}elseif(preg_match(‘#Shiira[/]([a-zA-Z0-9.]+)#i’,$ua,$matches)){
$browser=’Shiira ‘.$matches[1];
}elseif(preg_match(‘#Dillo[ /]([a-zA-Z0-9.]+)#i’,$ua,$matches)){
$browser=’Dillo ‘.$matches[1];
}elseif(preg_match(‘#Epiphany/([a-zA-Z0-9.]+)#i’,$ua,$matches)){
$browser=’Epiphany ‘.$matches[1];
}elseif(preg_match(‘#UP.Browser/([a-zA-Z0-9.]+)#i’,$ua,$matches)){
$browser=’Openwave UP.Browser ‘.$matches[1];
}elseif(preg_match(‘#DoCoMo/([a-zA-Z0-9.]+)#i’,$ua,$matches)){
$browser=’DoCoMo ‘.$matches[1];
}elseif(preg_match(‘#(Firefox|Phoenix|Firebird|BonEcho|GranParadiso|Minefield|Iceweasel)/([a-zA-Z0-9.]+)#i’,$ua,$matches)){
$browser=’Firefox ‘.$matches[2];
}elseif(preg_match(‘#(SeaMonkey)/([a-zA-Z0-9.]+)#i’,$ua,$matches)){
$browser=’Mozilla SeaMonkey ‘.$matches[2];
}elseif(preg_match(‘#Kazehakase/([a-zA-Z0-9.]+)#i’,$ua,$matches)){
$browser=’Kazehakase ‘.$matches[1];
}else{
$browser=’未知浏览器’;
}
return $os.” | “.$browser;
}

然后在comments.php中的评论的循环中添加以下代码在你想要显示用户信息的地方

<?php echo user_agent($comment->comment_agent); ?>

 


原创文章,转载请注明:起落SEO博客
本文链接地址: http://76tui.net/archives/892.html

5 个评论:

  1. 我去试试~~~

    [回复]

    uknow 回复:

    嘿嘿 应该好用吧

    [回复]

    ixwebhosting中文 said on: 22/07/2011 17:07 | Windows XP | Chrome 12.0.742.122
  2. 这些东西对网页设计有帮助。不过像51啦统计这些都能提供这些信息,直接看统计也可以

    [回复]

    uknow 回复:

    是啊 前台显示就是好玩 后台统计都有 一目了然

    [回复]

    九江营销 said on: 22/07/2011 19:41 | Windows XP | Internet Explorer 6.0
  3. 用ZBLOG的路过一下

    [回复]

    uknow 回复:

    呵呵 卢松松大哥貌似就是ZBLOG吧

    [回复]

    郑州SEO said on: 22/07/2011 20:41 | Windows 7 | Internet Explorer 9.0
  4. 这个以后确实有用, 先收藏着

    [回复]

    uknow 回复:

    呵呵 欢迎收藏

    [回复]

    个人努力挣钱中 said on: 22/07/2011 22:20 | Windows XP | Chrome 13.0.782.1
  5. 我也要去试试

    [回复]

    微故事 said on: 23/07/2011 09:43 | Windows XP | Internet Explorer 6.0

发表评论

Your email is never published nor shared. Required fields are marked *

*

*

=5794*

输入您的评论:


评论