php检测浏览器
//php加载函数要比加载类要快一些,建议使用函数判断
/**
*判断是否是通过手机访问
*
*/
function isMobile() {
// 如果有HTTP_X_WAP_PROFILE则一定是移动设备
if (isset ($_SERVER['HTTP_X_WAP_PROFILE'])) {
return true;
}
//如果via信息含有wap则一定是移动设备,部分服务商会屏蔽该信息
if (isset ($_SERVER['HTTP_VIA'])) {
//找不到为flase,否则为true
return stristr($_SERVER['HTTP_VIA'], "wap") ? true : false;
}
//判断手机发送的客户端标志,兼容性有待提高
if (isset ($_SERVER['HTTP_USER_AGENT'])) {
$clientkeywords = array (
'nokia',
'sony',
'ericsson',
'mot',
'samsung',
'htc',
'sgh',
'lg',
'sharp',
'sie-',
'philips',
'panasonic',
'alcatel',
'lenovo',
'iphone',
'ipod',
'blackberry',
'meizu',
'android',
'netfront',
'symbian',
'ucweb',
'windowsce',
'palm',
'operamini',
'operamobi',
'openwave',
'nexusone',
'cldc',
'midp',
'wap',
'mobile'
);
// 从HTTP_USER_AGENT中查找手机浏览器的关键字
if (preg_match("/(" . implode('|', $clientkeywords) . ")/i", strtolower($_SERVER['HTTP_USER_AGENT']))) {
return true;
}
}
//协议法,因为有可能不准确,放到最后判断
if (isset ($_SERVER['HTTP_ACCEPT'])) {
// 如果只支持wml并且不支持html那一定是移动设备
// 如果支持wml和html但是wml在html之前则是移动设备
if ((strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') !== false)
&& (strpos($_SERVER['HTTP_ACCEPT'], 'text/html') === false ||
(strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') <
strpos($_SERVER['HTTP_ACCEPT'], 'text/html')))) {
return true;
}
}
return false;
}
2. PHP判断是手机端还是PC端 PHP判断是否是微信浏览器
判断是否是微信浏览器:
function is_weixin(){
if ( strpos($_SERVER['HTTP_USER_AGENT'], 'MicroMessenger') !== false ) {
return true;//是微信浏览器。返回true
}
return false;//不是微信浏览器。返回false
}
判断手机或pc
function isMobile()
{
// 如果有HTTP_X_WAP_PROFILE则一定是移动设备
if (isset ($_SERVER['HTTP_X_WAP_PROFILE']))
{
return true;
}
// 如果via信息含有wap则一定是移动设备,部分服务商会屏蔽该信息
if (isset ($_SERVER['HTTP_VIA']))
{
// 找不到为flase,否则为true
return stristr($_SERVER['HTTP_VIA'], "wap") ? true : false;
}
// 脑残法,判断手机发送的客户端标志,兼容性有待提高
if (isset ($_SERVER['HTTP_USER_AGENT']))
{
$clientkeywords = array ('nokia',
'sony',
'ericsson',
'mot',
'samsung',
'htc',
'sgh',
'lg',
'sharp',
'sie-',
'philips',
'panasonic',
'alcatel',
'lenovo',
'iphone',
'ipod',
'blackberry',
'meizu',
'android',
'netfront',
'symbian',
'ucweb',
'windowsce',
'palm',
'operamini',
'operamobi',
'openwave',
'nexusone',
'cldc',
'midp',
'wap',
'mobile'
);
// 从HTTP_USER_AGENT中查找手机浏览器的关键字
if (preg_match("/(" . implode('|', $clientkeywords) . ")/i", strtolower($_SERVER['HTTP_USER_AGENT'])))
{
return true;
}
}
// 协议法,因为有可能不准确,放到最后判断
if (isset ($_SERVER['HTTP_ACCEPT']))
{
// 如果只支持wml并且不支持html那一定是移动设备
// 如果支持wml和html但是wml在html之前则是移动设备
if ((strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') !== false) && (strpos($_SERVER['HTTP_ACCEPT'], 'text/html') === false || (strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') < strpos($_SERVER['HTTP_ACCEPT'], 'text/html'))))
{
return true;
}
}
return false;
}
3. php怎么判断打开的浏览器是什么浏览器
检测用户当前浏览器是否为IE浏览器,在某些情况下是很有必要的,下面有个不错的示例,经测试还不错,需要的朋友可以参考下
复制代码 代码如下:
/**
* 检测用户当前浏览器
* @return boolean 是否ie浏览器
*/
function chk_ie_browser() {
$userbrowser = $_SERVER['HTTP_USER_AGENT'];
if ( preg_match( '/MSIE/i', $userbrowser ) ) {
$usingie = true;
} else {
$usingie = false;
}
return $usingie;
}
4. 在PHP中,判断浏览器类型是IE还是火狐
用到了系统中自带的变量:$_SERVER["HTTP_USER_AGENT"]
$_SERVER["HTTP_USER_AGENT"]获取客户端浏览器的型号,注意这个不是一定准确的,是可以随意伪造的。
当前请求的 User_Agent: 头部的内容,该字符串表明了访问该页面的用户代理的信息。一个典型的例子是:Mozilla/4.5 [en] (X11; U; Linux 2.2.9 i586);您也可以使用get_browser() 得到这个信息。
注释:
$_SERVER服务器变量。
$_SERVER["HTTP_USER_AGENT"]该字符串表明了访问该页面的用户代理的信息。
代码:
<?php
if(strpos($_SERVER["HTTP_USER_AGENT"],”MSIE8.0″))
echo“InternetExplorer8.0″;//这里可以写其他的执行命令
elseif(strpos($_SERVER["HTTP_USER_AGENT"],”MSIE7.0″))
echo“InternetExplorer7.0″;
elseif(strpos($_SERVER["HTTP_USER_AGENT"],”MSIE6.0″))
echo“InternetExplorer6.0″;
elseif(strpos($_SERVER["HTTP_USER_AGENT"],”Firefox/3″))
echo“Firefox3″;
elseif(strpos($_SERVER["HTTP_USER_AGENT"],”Firefox/2″))
echo“Firefox2″;
elseif(strpos($_SERVER["HTTP_USER_AGENT"],”Chrome”))
echo“GoogleChrome”;
elseif(strpos($_SERVER["HTTP_USER_AGENT"],”Safari”))
echo“Safari”;
elseif(strpos($_SERVER["HTTP_USER_AGENT"],”Opera”))
echo“Opera”;
elseecho$_SERVER["HTTP_USER_AGENT"];
?>
5. PHP判断浏览器
用 $_SERVER["HTTP_USER_AGENT"] 取浏览器信息,里边有浏览器的类型及版本
随手网上搜的
<?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"];
?>
6. 用JS或者PHP如何判断是否是QQ浏览器
检测HTTP里面的AGENT可以识别浏览器类型,QQ浏览器的AGENT里面含有关键字QQBrowser
7. 如何php判断浏览器模式,如果是IE模式就提示文字不继续进行,如果是高速模式就不判断
简单的做法就是判断HTTP头部的 User-Agent 来识别是否 IE浏览器,可以使用以下代码来判断:
<?php
functionisIEbrower()
{
returnfalse!==stristr($_SERVER['HTTP_USER_AGENT'],'MSIE');
}
if(isIEbrower()){
header("Content-Type:text/html;charset=utf-8");
echo"这是IE模式,请使用高速模式";
exit();
}
判断是IE模式之后的逻辑需要自身去实现。
8. php 检测用户是否关闭浏览器
* 2、点击浏览器停止按钮 connection_status 1
* 3、超时 connection_status 2*/echo"test\n";//注意程序一定要有输出,否则ABORTED状态是检测不到的flush();sleep(1);if(connection_status()!=0){mylog('offline');die('end the script');}}functionmylog($str){$fp=fopen('e:/abort.txt', 'a');$str=date('Y-m-d H:i:s').$str
9. php怎么判断是不是苹果手机浏览器
该功能的实现思路是通过HTTP_X_WAP_PROFILE、HTTP_VIA、HTTP_USER_AGENT等信息来判断访客是否通过移动端浏览器访问PHP网站。以下是PHP代码:
/**
* 是否移动端访问访问
*
* @return bool
*/
function isMobile()
{
// 如果有HTTP_X_WAP_PROFILE则一定是移动设备
if (isset ($_SERVER['HTTP_X_WAP_PROFILE']))
{
return true;
}
// 如果via信息含有wap则一定是移动设备,部分服务商会屏蔽该信息
if (isset ($_SERVER['HTTP_VIA']))
{
// 找不到为flase,否则为true
return stristr($_SERVER['HTTP_VIA'], "wap") ? true : false;
}
// 脑残法,判断手机发送的客户端标志,兼容性有待提高
if (isset ($_SERVER['HTTP_USER_AGENT']))
{
$clientkeywords = array ('nokia',
'sony',
'ericsson',
'mot',
'samsung',
'htc',
'sgh',
'lg',
'sharp',
'sie-',
'philips',
'panasonic',
'alcatel',
'lenovo',
'iphone',
'ipod',
'blackberry',
'meizu',
'android',
'netfront',
'symbian',
'ucweb',
'windowsce',
'palm',
'operamini',
'operamobi',
'openwave',
'nexusone',
'cldc',
'midp',
'wap',
'mobile'
);
// 从HTTP_USER_AGENT中查找手机浏览器的关键字
if (preg_match("/(" . implode('|', $clientkeywords) . ")/i", strtolower($_SERVER['HTTP_USER_AGENT'])))
{
return true;
}
}
// 协议法,因为有可能不准确,放到最后判断
if (isset ($_SERVER['HTTP_ACCEPT']))
{
// 如果只支持wml并且不支持html那一定是移动设备
// 如果支持wml和html但是wml在html之前则是移动设备
if ((strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') !== false) && (strpos($_SERVER['HTTP_ACCEPT'], 'text/html') === false || (strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') < strpos($_SERVER['HTTP_ACCEPT'], 'text/html'))))
{
return true;
}
}
return false;
}