首页 php教程 php手册 PHP判断浏览器类型程序代码详解

PHP判断浏览器类型程序代码详解

Jun 13, 2016 am 10:16 AM
php 代码 判断 操作 方法 浏览器 程序 简单 类型 详解

在php中如果要判断浏览器类型操作方法很简单的,我们只要利用全局变量HTTP_USER_AGENT就可以获取用户浏览器信息,这样我们就可以利用正则加以判断类型或浏览器版本了。

PHP如何判断浏览器类型及浏览器语言因为浏览器在和服务器连接时候都会先发送一些包含自己信息的内容(浏览器类型、语言)。

这里我们主要分析的是_SERVER["HTTP_USER_AGENT"](浏览器类型)和_SERVER["HTTP_ACCEPT_LANGUAGE"](浏览器语言)。
我们所要做的就是把这些内容读出来,然后用strpos或者preg_match函数来对比就可以了。
判断浏览器类型:

 代码如下 复制代码

 

先给出PHP代码部分,有些不是很全,需要的朋友自己依葫芦画瓢自行添加去。(下面这个代码有个小错误,请将文章看完并自行修改)

 代码如下 复制代码

if(strpos($_SERVER["HTTP_USER_AGENT"],"MSIE 9.0"))
echo "Internet Explorer 9.0";
else if(strpos($_SERVER["HTTP_USER_AGENT"],"MSIE 8.0"))
echo "Internet Explorer 8.0";
else if(strpos($_SERVER["HTTP_USER_AGENT"],"MSIE 7.0"))
echo "Internet Explorer 7.0";
else if(strpos($_SERVER["HTTP_USER_AGENT"],"MSIE 6.0"))
echo "Internet Explorer 6.0";
else if(strpos($_SERVER["HTTP_USER_AGENT"],"Firefox"))
echo "Firefox";
else if(strpos($_SERVER["HTTP_USER_AGENT"],"Chrome"))
echo "Chrome";
else if(strpos($_SERVER["HTTP_USER_AGENT"],"Safari"))
echo "Safari";
else if(strpos($_SERVER["HTTP_USER_AGENT"],"Opera"))
echo "Opera";
else echo $_SERVER["HTTP_USER_AGENT"];
?>

打开opera浏览器,可以看到它的页面请求头信息如下:

Opera/9.80 (Windows NT 5.1; U; Edition IBIS; zh-cn) Presto/2.10.229 Version/11.61
但是 strpos($_SERVER["HTTP_USER_AGENT"],"Opera") 返回的值始终是“0”

解决方法比较也比较简单,

 代码如下 复制代码

else if(strpos($_SERVER["HTTP_USER_AGENT"],"Opera"))

替换成

else if(strpos($_SERVER["HTTP_USER_AGENT"],"pera"))

下面再补一个更强的可判断是浏览器用户还是seo/seo.html" target="_blank">搜索引擎

 代码如下 复制代码


function my_get_browser(){
 if(empty($_SERVER['HTTP_USER_AGENT'])){
  return '命令行,机器人来了!';
 }
 if(false!==strpos($_SERVER['HTTP_USER_AGENT'],'MSIE 9.0')){
  return 'Internet Explorer 9.0';
 }
 if(false!==strpos($_SERVER['HTTP_USER_AGENT'],'MSIE 8.0')){
  return 'Internet Explorer 8.0';
 }
 if(false!==strpos($_SERVER['HTTP_USER_AGENT'],'MSIE 7.0')){
  return 'Internet Explorer 7.0';
 }
 if(false!==strpos($_SERVER['HTTP_USER_AGENT'],'MSIE 6.0')){
  return 'Internet Explorer 6.0';
 }
 if(false!==strpos($_SERVER['HTTP_USER_AGENT'],'Firefox')){
  return 'Firefox';
 }
 if(false!==strpos($_SERVER['HTTP_USER_AGENT'],'Chrome')){
  return 'Chrome';
 }
 if(false!==strpos($_SERVER['HTTP_USER_AGENT'],'Safari')){
  return 'Safari';
 }
 if(false!==strpos($_SERVER['HTTP_USER_AGENT'],'Opera')){
  return 'Opera';
 }
 if(false!==strpos($_SERVER['HTTP_USER_AGENT'],'360SE')){
  return '360SE';
 }
}

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

热门话题

Java教程
1663
14
CakePHP 教程
1420
52
Laravel 教程
1313
25
PHP教程
1266
29
C# 教程
1238
24
欧易交易所如何注册账户 欧易交易所注册教程 欧易交易所如何注册账户 欧易交易所注册教程 Apr 24, 2025 pm 02:06 PM

注册欧易账户的步骤如下:1.准备有效邮箱或手机号和稳定网络。2.访问欧易官网。3.进入注册页面。4.选择邮箱或手机号注册,填写信息。5.获取并填写验证码。6.同意用户协议。7.完成注册并登录,进行KYC和设置安全措施。

币安下载链接 币安下载路径 币安下载链接 币安下载路径 Apr 24, 2025 pm 02:12 PM

安全下载币安APP需通过官方渠道:1. 访问币安官网,2. 找到并点击APP下载入口,3. 选择扫描二维码、应用商店或直接下载APK文件的方式下载,确保链接和开发者信息真实,开启双重验证保护账户安全。

欧易交易所app官网下载苹果手机下载 欧易交易所app官网下载苹果手机下载 Apr 28, 2025 pm 06:57 PM

欧易交易所app支持苹果手机下载,访问官网,点击“苹果手机”选项,在App Store中获取并安装,注册或登录后即可进行加密货币交易。

芝麻开门交易所如何注册账户 芝麻开门交易所注册教程 芝麻开门交易所如何注册账户 芝麻开门交易所注册教程 Apr 24, 2025 pm 02:00 PM

注册芝麻开门账号需7步:1.准备有效邮箱或手机号及稳定网络;2.访问官网;3.进入注册页面;4.选择并填写注册方式;5.获取并填写验证码;6.同意用户协议;7.完成注册并登录,建议进行KYC和设置安全措施。

芝麻开门官网入口 芝麻开门官方最新入口2025 芝麻开门官网入口 芝麻开门官方最新入口2025 Apr 28, 2025 pm 07:51 PM

芝麻开门是重点加密货币交易的平台,用户可以通过官方网站或社交媒体获取入口,确保访问时验证SSL证书和网站内容的真实性。

什么是链上交易?全球链上交易所有哪些? 什么是链上交易?全球链上交易所有哪些? Apr 22, 2025 am 10:06 AM

欧盟MiCA合规认证,覆盖50 法币通道,冷存储比例95%,零安全事件记录。美国SEC持牌平台,法币直购便捷,冷存储比例98%,机构级流动性,支持大额OTC和自定义订单,多级清算保护。

如果session_start()被多次调用会发生什么? 如果session_start()被多次调用会发生什么? Apr 25, 2025 am 12:06 AM

多次调用session_start()会导致警告信息和可能的数据覆盖。1)PHP会发出警告,提示session已启动。2)可能导致session数据意外覆盖。3)使用session_status()检查session状态,避免重复调用。

币安官网入口 币安官方最新入口2025 币安官网入口 币安官方最新入口2025 Apr 28, 2025 pm 07:54 PM

访问币安官网,并查看HTTPS和绿锁标志,避免钓鱼网站,官方应用也可安全访问。

See all articles