zoukankan      html  css  js  c++  java
  • 根据浏览器UA信息进行跳转(移动和pc)

    如何用php判断一个客户端是手机还是电脑?其实很简单,开发人员都知道,通过浏览器访问网站时,浏览器都会向服务器发送UA,即User Agent(用户代理)。不同浏览器、同一浏览器的不同版本、手机浏览器、电脑端的浏览器的UA都是不一样的。我们只要写代程序获取这段UA,然后判断UA是什么,然后就可以区分出是手机还是电脑了。

    下面,通过PHP代码来判断访客的浏览器UA是否为手机浏览器,然后自动跳转到相应的页面:

    	<?php
    
    	function is_mobile(){
    
    	     //正则表达式,批配不同手机浏览器UA关键词。
    
    	     $regex_match="/(nokia|iphone|android|motorola|^mot-|softbank|foma|docomo|kddi|up.browser|up.link|";
    
    	     $regex_match.="htc|dopod|blazer|netfront|helio|hosin|huawei|novarra|CoolPad|webos|techfaith|palmsource|";
    
    	     $regex_match.="blackberry|alcatel|amoi|ktouch|nexian|samsung|^sam-|s[cg]h|^lge|ericsson|philips|sagem|wellcom|bunjalloo|maui|";
    
    	     $regex_match.="symbian|smartphone|midp|wap|phone|windows ce|iemobile|^spice|^bird|^zte-|longcos|pantech|gionee|^sie-|portalmmm|";
    
    	     $regex_match.="jigs browser|hiptop|^ucweb|^benq|haier|^lct|operas*mobi|opera*mini|320x320|240x320|176x220";
    
    	     $regex_match.=")/i";
    
    	    
    
    	     return isset($_SERVER['HTTP_X_WAP_PROFILE']) or isset($_SERVER['HTTP_PROFILE']) or preg_match($regex_match, strtolower($_SERVER['HTTP_USER_AGENT'])); //如果UA中存在上面的关键词则返回真。
    
    	}
    
    	   
    
    	     if(is_mobile()) {
    
    	     //如果为真,则进行WAP页面。
    
    	       header( "HTTP/1.1 301 Moved Permanently");  
    
    	       header("Location: http://www.966266.com/wap.php");
    
    	     }else {    
    
    	     //如果为假,则进行WEB页面。
    
    	        header( "HTTP/1.1 301 Moved Permanently"); 
    
    	        header("Location: http://www.966266.com/"); 
    
    	     }
    
    	?>
  • 相关阅读:
    智力题:砝码称重问题
    Java:Comparator接口
    机器学习中比较重要的几个概念
    NLP:Gensim库之word2vec
    Java遍历Map对象的四种方式
    给数据库减负刻不容缓:多级缓存设计
    CentOS6.10安装redis5.0
    Linux下安装whl文件
    Linux下安装Gensim
    Linux下安装jieba
  • 原文地址:https://www.cnblogs.com/dunken/p/4377263.html
Copyright © 2011-2022 走看看