使用php判断浏览器的类型和语言的函数代码

2015-01-24信息快讯网

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

我们经常看到有一些网站上面会显示出你目前使用的浏览器类型和使用的语言,比如显示的是:您使用的浏览器为 IE6,繁体字。看起来是不是很炫。

其实这样的功能不难实现,无非就是判断浏览器的类型和语言,如果用JS来做应该很简单,这里我们看看用PHP来怎么实现这样的功能,既然是在做判断,就可以用PHP的条件语句if..else来判断实现。

判断浏览器类型:

<?php echo $_SERVER["HTTP_USER_AGENT"]; ?>

判断浏览器语言:

<?php echo $_SERVER["HTTP_ACCEPT_LANGUAGE"]; ?>

判断浏览器类型的具体程序如下:

<?php
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/3"))  
echo "Firefox 3";  
else if(strpos($_SERVER["HTTP_USER_AGENT"],"Firefox/2"))  
echo "Firefox 2";  
else if(strpos($_SERVER["HTTP_USER_AGENT"],"Chrome"))  
echo "Google 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"];  
?>


判断浏览器语言的具体程序如下:

<?php
$lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 4); //只取前4位,这样只判断最优先的语言。如果取前5位,可能出现en,zh的情况,影响判断。  
if (preg_match("/zh-c/i", $lang))  
echo "简体中文";  
else if (preg_match("/zh/i", $lang))  
echo "繁w中文";  
else if (preg_match("/en/i", $lang))  
echo "English";  
else if (preg_match("/fr/i", $lang))  
echo "French";  
else if (preg_match("/de/i", $lang))  
echo "German";  
else if (preg_match("/jp/i", $lang))  
echo "Japanese";  
else if (preg_match("/ko/i", $lang))  
echo "Korean";  
else if (preg_match("/es/i", $lang))  
echo "Spanish";  
else if (preg_match("/sv/i", $lang))  
echo "Swedish";  
else echo $_SERVER["HTTP_ACCEPT_LANGUAGE"];  
?>

小结:判断浏览器类型主要是靠分析_SERVER["HTTP_USER_AGENT"]的内容,而分析浏览器语言则是分析_SERVER["HTTP_ACCEPT_LANGUAGE"]。

原理:因为浏览器在和服务器连接时候都会先发送一些包含自己信息的内容(浏览器类型、语言)。所以这里我们主要分析的是_SERVER["HTTP_USER_AGENT"](浏览器类型)和_SERVER["HTTP_ACCEPT_LANGUAGE"](浏览器语言)。我们所要做的就是把这些内容读出来,然后用strpos或者preg_match函数来对比就可以了,根据程序的设计我们还可以将页面设计得更漂亮一些出来。

php读取图片内容并输出到浏览器的实现代码
php 读取文件头判断文件类型的实现代码
PHP取二进制文件头快速判断文件类型的实现代码
PHP实现根据浏览器跳转不同语言页面代码
关于PHP语言构造器介绍
如何使用php判断服务器是否是HTTPS连接
解析file_get_contents模仿浏览器头(user_agent)获取数据
关于PHP自动判断字符集并转码的详解
使用php判断网页是否gzip压缩
探讨:php中在foreach中使用foreach ($arr as &$value) 这种类型的解释
解析MySql与Java的时间类型
解析PHP将对象转换成数组的方法(兼容多维数组类型)
php读取二进制流(C语言结构体struct数据文件)的深入解析
如何用C语言编写PHP扩展的详解
深入PHP与浏览器缓存的分析
php-cli简介(不会Shell语言一样用Shell)
用PHP实现浏览器点击下载TXT文档的方法详解
PHP中如何定义和使用常量
CI框架源码阅读,系统常量文件constants.php的配置
PHP中通过HTTP_USER_AGENT判断是否为手机移动终端的函数代码
浏览器预览PHP文件时顶部出现空白影响布局分析原因及解决办法
php判断上传的Excel文件中是否有图片及PHPExcel库认识
php语言流程控制中的主动与被动
PHP实现提取一个图像文件并在浏览器上显示的代码
PHP判断文件是否存在、是否可读、目录是否存在的代码
php中判断文件存在是用file_exists还是is_file的整理
PHP获取用户的浏览器与操作系统信息的代码
PHP中根据IP地址判断城市实现城市切换或跳转代码
浏览器关闭后,能继续执行的php函数(ignore_user_abort)
php中根据变量的类型 选择echo或dump
SESSION信息保存在哪个文件目录下以及能够用来保存什么类型的数据
PHP 基于文件头的文件类型验证类函数
PHP 第二节 数据类型之转换
PHP 第二节 数据类型之数组
PHP语言中global和$GLOBALS[]的分析 之二
选择PHP作为网站开发语言的原因分享
php 中英文语言转换类
php 中英文语言转换类代码
php中修改浏览器的User-Agent来伪装你的浏览器和操作系统
©2014-2024 dbsqp.com