加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php函数实现判断是否移动端访问

发布时间:2020-12-13 02:26:41 所属栏目:PHP教程 来源:网络整理
导读:《php函数实现判断是否移动端访问》要点: 本文介绍了php函数实现判断是否移动端访问,希望对您有用。如果有疑问,可以联系我们。 忘记在哪里获取的函数了,刚才不了心在一个包里面找到,临时保存起来 PHP应用 代码如下: /** ?* 是否移动端拜访拜访 ?* ?* @ret

《php函数实现判断是否移动端访问》要点:
本文介绍了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;
}

非常简单实用的函数,分享给大家,希望大家能够喜欢.

欢迎参与《php函数实现判断是否移动端访问》讨论,分享您的想法,编程之家 52php.cn为您提供专业教程。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读