• 技术文章 >后端开发 >PHP问题

    php判断是否为移动手机端

    醉折花枝作酒筹醉折花枝作酒筹2021-06-29 15:15:29转载2146

    开发公司网站的时候,需要判断客户是手机端还是电脑pc端,对于不同的设备给予不同的页面访问,在网上找到这个方法比较管用。接下来就由小编为带大家一起学习一下判断方法。

    开发公司网站的时候,需要判断客户是手机端还是电脑pc端,对于不同的设备给予不同的页面访问,在网上找到这个方法比较管用。

    function isMobile()
    			{ 
    				// 如果有HTTP_X_WAP_PROFILE则一定是移动设备
    				if (isset ($_SERVER['HTTP_X_WAP_PROFILE']))
    				{
    					return "1";
    				} 
    				// 如果via信息含有wap则一定是移动设备
    				if (isset ($_SERVER['HTTP_VIA']))
    				{ 
    					// 找不到为flase,否则为true
    					return stristr($_SERVER['HTTP_VIA'], "wap") ? "1" : "0";
    				} 
    				// 脑残法,判断手机发送的客户端标志,兼容性有待提高
    				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 "1";
    					} 
    				} 
    				// 协议法,因为有可能不准确,放到最后判断
    				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 "1";
    					} 
    				} 
    				return "0";
    			}

    该方法可以判断是电脑端还是手机端,该方法返回为字符串"1"时为手机端,返回为"0"时为电脑端。

    推荐学习:php视频教程

    以上就是php判断是否为移动手机端的详细内容,更多请关注php中文网其它相关文章!

    声明:本文转载于:CSDN,如有侵犯,请联系admin@php.cn删除
    上一篇:PHP如何简单实现“相关文章推荐”功能 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • laravel docker sail php8.0如何安装php-imagick• php如何大批量导出excel数据• php中如何调用存储函数?调用存储过程?其中触发器是什么?• PHP中什么是Calendar扩展?如何使用?• PHP如何简单实现“相关文章推荐”功能
    1/1

    PHP中文网