php获取用户浏览器版本的方法

yipeiwu_com7年前PHP代码库

本文实例讲述了php获取用户浏览器版本的方法。分享给大家供大家参考。具体分析如下:

在php中我们有个全局变量$_SERVER['HTTP_USER_AGENT'];可以获取用户所有信息,我们要经过处理才可以判断用户浏览器是哪种类型的,下面的函数就可以准确的用户浏览器版本号代码.

复制代码 代码如下:
function getbrowse()
{
 $agent = $_server['http_user_agent'];
 $browser = '';
 $browserver = '';
 $browser = array('lynx', 'mosaic', 'aol', 'opera', 'java', 'macweb', 'webexplorer', 'omniweb');
 for($i = 0; $i <= 7; $i ++){
  if(strpos($agent, $browsers[$i])){
   $browser = $browsers[$i];
   $browserver = '';
  }
 }
 if(ereg('mozilla', $agent) && !ereg('msie', $agent)){
  $temp = explode('(', $agent);
  $part = $temp[0];
  $temp = explode('/', $part);
  $browserver = $temp[1];
  $temp = explode(' ', $browserver);
  $browserver = $temp[0];
  $browserver = preg_replace('/([d.]+)/', '\1', $browserver);
  $browserver = $browserver;
  $browser = 'netscape navigator';
 }
 if(ereg('mozilla', $agent) && ereg('opera', $agent)) {
  $temp = explode('(', $agent);
  $part = $temp[1];
  $temp = explode(')', $part);
  $browserver = $temp[1];
  $temp = explode(' ', $browserver);
  $browserver = $temp[2];
  $browserver = preg_replace('/([d.]+)/', '\1', $browserver);
  $browserver = $browserver;
  $browser = 'opera';
 }
 if(ereg('mozilla', $agent) && ereg('msie', $agent)){
  $temp = explode('(', $agent);
  $part = $temp[1];
  $temp = explode(';', $part);
  $part = $temp[1];
  $temp = explode(' ', $part);
  $browserver = $temp[2];
  $browserver = preg_replace('/([d.]+)/','\1',$browserver);
  $browserver = $browserver;
  $browser = 'internet explorer';
 }
 if($browser != ''){
  $browseinfo = $browser.' '.$browserver;
 } else {
  $browseinfo = false;
 }
 return $browseinfo;
}
//应用方法

//在ie中
echo getbrowse(); //internet explorer 6.0
//在firefox中
echo getbrowse() ;//netscape navigator 5.0

希望本文所述对大家的php程序设计有所帮助。

相关文章

php如何实现不借助IDE快速定位行数或者方法定义的文件和位置

php 如何实现不借助IDE快速定位行数或者方法定义的文件和位置 借助了ReflectionMethod的一些特性,可以快速获得函数或者方法是在哪个文件的什么位置定义的,对于调试没有文档...

php使用codebase生成随机数

有25幅作品拿去投票,一次投票需要选16幅,单个作品一次投票只能选择一次。前面有个程序员捅了漏子,忘了把投票入库,有200个用户产生的投票序列为空。那么你会如何填补这个漏子? 当然向上级...

PHP中使用Memache作为进程锁的操作类分享

<?php // 使用Memache 作为进程锁 class lock_processlock{ // key 的前缀 protected $sLoc...

PHP实现补齐关闭的HTML标签

本文实例讲述了PHP实现补齐关闭的HTML标签。分享给大家供大家参考,具体如下: 很多时候,在我们做文章截取摘要的时候,如果出现HTML的内容,会出现截取的文章没有结束的HTML标签。这...

PHP截断标题且兼容utf8和gb2312编码

复制代码 代码如下: <?php if(strlen($r[title])>45){$str=utf8Substr($r[title],0,15)."...";}else{$...