当前位置: 首页 > 编程笔记 >

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

经正祥
2023-03-14
本文向大家介绍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;

}

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

 类似资料:
  • 本文向大家介绍JS实现判断移动端PC端功能,包括了JS实现判断移动端PC端功能的使用技巧和注意事项,需要的朋友参考一下 这篇文章主要介绍了JS实现判断移动端PC端功能,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 博客上的小精灵看起来很可耐,用了两年了现在才知道用移动端看的话会挡着屏幕,既然知道了就要改进咯。 判断是pc 还是移动端 或者 以上就

  • X2.2.0新增 sp_is_weixin() 功能: 判断是否为微信访问 参数: 无 返回: 类型boolean,true为微信访问 使用: $is_weixin = sp_is_weixin();

  • 1.4.0新增 sp_is_mobile() 功能: 判断是否为手机访问 参数: 无 返回: boolean, true:是手机访问,false:不是 使用: if(sp_is_mobile()){ echo "我是手机用户呢!"; }else{ echo "我不是手机用户呀,那就是电脑用户呀!"; } 模板里使用 <if con

  • cmf_is_iphone() 5.0.180626增加 功能 判断是否为iphone访问 参数 无 返回 boolean

  • cmf_is_ipad() 5.0.180626增加 功能 判断是否为ipad访问 参数 无 返回 boolean

  • cmf_is_ios() 5.0.180626增加 功能 判断是否为ios访问 参数 无 返回 boolean