PHP判断浏览器、判断语言代码分享
发布:smiling 来源: PHP粉丝网 添加日期:2021-05-15 21:40:57 浏览: 评论:0
这篇文章主要给大家分享了PHP判断浏览器、判断语言的代码,十分的简单,主要是对服务器预定义变量$_SERVER的获取分析,这里推荐给大家。
PHP编程中经常需要用到一些服务器的一些资料,特把$_SERVER的详细参数整理下,方便以后使用。
判断浏览器类型
- //判断类型
- <?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 "繁體中文";
- 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"];
- ?>
判断浏览器内核的PHP程序
- <?php
- error_reporting(E_ALL & ~ E_NOTICE);
- class clientGetObj
- {
- function getBrowse()
- {
- global $_SERVER;
- $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(preg_match('/Mozilla/', $Agent) && !preg_match('/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(preg_match('/Mozilla/', $Agent) && preg_match('/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(preg_match('/Mozilla/', $Agent) && preg_match('/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;
- }
- function getIP ()
- {
- global $_SERVER;
- if (getenv('HTTP_CLIENT_IP')) {
- $ip = getenv('HTTP_CLIENT_IP');
- } else if (getenv('HTTP_X_FORWARDED_FOR')) {
- $ip = getenv('HTTP_X_FORWARDED_FOR');
- } else if (getenv('REMOTE_ADDR')) {
- $ip = getenv('REMOTE_ADDR');
- } else {
- $ip = $_SERVER['REMOTE_ADDR'];
- }
- return $ip;
- }
- function getOS ()
- {
- global $_SERVER;
- $agent = $_SERVER['HTTP_USER_AGENT'];
- $os = false;
- if (preg_match('/win/', $agent) && strpos($agent, '95')){
- $os = 'Windows 95';
- }
- else if (preg_match('/win 9x/', $agent) && strpos($agent, '4.90')){
- $os = 'Windows ME';
- }
- else if (preg_match('/win/', $agent) && preg_match('98', $agent)){
- $os = 'Windows 98';
- }
- else if (preg_match('/win/', $agent) && preg_match('nt 5.1', $agent)){
- $os = 'Windows XP';
- }
- else if (preg_match('/win/', $agent) && preg_match('nt 5', $agent)){
- $os = 'Windows 2000';
- }
- else if (preg_match('/win/', $agent) && preg_match('nt', $agent)){
- $os = 'Windows NT';
- }
- else if (preg_match('/win/', $agent) && preg_match('32', $agent)){
- $os = 'Windows 32';
- }
- else if (preg_match('/linux/', $agent)){
- $os = 'Linux';
- }
- else if (preg_match('/unix/', $agent)){
- $os = 'Unix';
- }
- else if (preg_match('/sun/', $agent) && preg_match('os', $agent)){
- $os = 'SunOS';
- }
- else if (preg_match('/ibm/', $agent) && preg_match('os', $agent)){
- $os = 'IBM OS/2';
- }
- else if (preg_match('/Mac/', $agent) && preg_match('PC', $agent)){
- $os = 'Macintosh';
- }
- else if (preg_match('/PowerPC/', $agent)){
- $os = 'PowerPC';
- }
- else if (preg_match('/AIX/', $agent)){
- $os = 'AIX';
- }
- else if (preg_match('/HPUX/', $agent)){
- $os = 'HPUX';
- }
- else if (preg_match('/NetBSD/', $agent)){
- $os = 'NetBSD';
- }
- else if (preg_match('/BSD/', $agent)){
- $os = 'BSD';
- }
- else if (preg_match('/OSF1/', $agent)){
- $os = 'OSF1';
- }
- else if (preg_match('/IRIX/', $agent)){
- $os = 'IRIX';
- }
- else if (preg_match('/FreeBSD/', $agent)){
- $os = 'FreeBSD';
- }
- else if (preg_match('/teleport/', $agent)){
- $os = 'teleport';
- }
- else if (preg_match('/flashget/', $agent)){
- $os = 'flashget';
- }
- else if (preg_match('/webzip/', $agent)){
- $os = 'webzip';
- }
- else if (preg_match('/offline/', $agent)){
- $os = 'offline';
- }
- else {
- $os = 'Unknown';
- }
- return $os;
- }
- }
- $code = new clientGetObj;
- echo $str1 = $code->getBrowse()."<br>";//浏览器:
- echo $str2 = $code->getIP()."<br>";//IP地址:
- echo $str3 = $code->getOS();//操作系统:
- ?>
以上就是个人整理的关于$_SERVER获取服务器信息的常用信息了,希望大家能够喜欢。
Tags: PHP浏览器 PHP判断语言
相关文章
- ·php禁止浏览器使用缓存页面(2014-09-21)
- ·php判断是手机访问还是电脑浏览器的方法(2016-07-27)
- ·PHP获取浏览器信息类和客户端地理位置的2个方法(2020-11-20)
- ·PHP向浏览器输出内容的4个函数总结(2021-04-26)
- ·PHP实现浏览器格式化显示XML的方法示例(2021-11-05)
- ·PHP判断是否是微信打开还是浏览器打开的方法(2021-11-11)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)