JS推断手机访谈跳转到手提式有线话机站,php决断

2019-10-02 04:36 来源:未知

在php中可以用$_SERVER['HTTP_USER_AGENT']来区分是android、ios还是wp的请求,具体可以用以下代码来实现:

这里提供了六种让手机端访问网站跳转到手机端的方法:

$userAgent = $_SERVER['HTTP_USER_AGENT'];
if (preg_match("/(iPod|iPad|iPhone)/", $userAgent))
{
    echo 'ios'; //IOS客户端
}
elseif (preg_match("/WP/", $userAgent))
{
    echo 'wp'; //WinPhone客户端
}
elseif (preg_match("/android/i", $userAgent)) {
    echo 'android'; //android客户端
}

第一种:

当然我也可以在网页头部加上一段js代码效果是一样的

<script>

<script type="text/javascript">
try {
 var urlhash = window.location.hash;
 if ( !urlhash.match("fromapp") ) {
  if ( (navigator.userAgent.match(/(iPhone|iPod|Android|ios|iPad|SymbianOS|Windows Phone)/i) )) {
   window.location = "";
  }
 }
}
catch(err) {
}
</script>

    if(navigator.platform.indexOf('Win32')!=-1){ 

这样只要是手机访问网站就会自动到了手机版本网站了

    //pc

        //window.location.href="电脑网址";

     }else{ 

   //shouji

        window.location.href="手机网址";

      } 

</script>

 

第二种:

<script type="text/javascript">

function browserRedirect() { 

var sUserAgent= navigator.userAgent.toLowerCase(); 

var bIsIpad= sUserAgent.match(/ipad/i) == "ipad"; 

var bIsIphoneOs= sUserAgent.match(/iphone os/i) == "iphone os"; 

var bIsMidp= sUserAgent.match(/midp/i) == "midp"; 

var bIsUc7= sUserAgent.match(/rv:1.2.3.4/i) == "rv:1.2.3.4"; 

var bIsUc= sUserAgent.match(/ucweb/i) == "ucweb"; 

var bIsAndroid= sUserAgent.match(/android/i) == "android"; 

var bIsCE= sUserAgent.match(/windows ce/i) == "windows ce"; 

var bIsWM= sUserAgent.match(/windows mobile/i) == "windows mobile"; 

if (bIsIpad || bIsIphoneOs || bIsMidp || bIsUc7 || bIsUc || bIsAndroid || bIsCE || bIsWM) { 

window.location.href= '手机网站地址'; 

} else { 

window.location= '电脑网站地址'; 

browserRedirect(); 

</script>

 

第三种:

<script type="text/javascript">

var mobileAgent = new Array("iphone", "ipod", "ipad", "android", "mobile", "blackberry", "webos", "incognito", "webmate", "bada", "nokia", "lg", "ucweb", "skyfire");

var browser = navigator.userAgent.toLowerCase(); 

var isMobile = false; 

for (var i=0; i<mobileAgent.length; i++){ if (browser.indexOf(mobileAgent[i])!=-1){ isMobile = true; 

//alert(mobileAgent[i]); 

location.href = '手机网址';

break; } } 

</script>

 

第四种:

<?php

////这段放手机站里

header("Cache-Control: no-cache"); 

header("Pragma: no-cache");

$ua = strtolower($_SERVER['HTTP_USER_AGENT']);

$uachar = "/(symbianos|android|Mac OS|ucweb|blackberry)/i";

if($ua != '' && !preg_match($uachar, $ua)){

echo 'window.location.href="电脑地址";';

exit();

}

?>

<?php

//这段放在网站里

header("Cache-Control: no-cache"); 

header("Pragma: no-cache");

$ua = strtolower($_SERVER['HTTP_USER_AGENT']);

$uachar = "/(symbianos|android|Mac OS|ucweb|blackberry)/i";

if($ua != '' && preg_match($uachar, $ua)){

echo 'window.location.href="手机地址";';

exit();

}

?>

 

第五种:

<?php

function UserAgent(){

    $user_agent = ( !isset($_SERVER['HTTP_USER_AGENT'])) ? FALSE : $_SERVER['HTTP_USER_AGENT'];

    return $user_agent;

}

//Mobile

if ((preg_match("/(iphone|ipod|android)/i", strtolower(UserAgent()))) AND strstr(strtolower(UserAgent()), 'webkit')){

    header('Location: 手机网址');

    exit;

}else if(trim(UserAgent()) == '' OR preg_match("/(nokia|sony|ericsson|mot|htc|samsung|sgh|lg|philips|lenovo|ucweb|opera mobi|windows mobile|blackberry)/i", strtolower(UserAgent()))){

    header('Location: 手机网址');

    exit;

}else{//PC

    header("Location: 电脑网址");

}

?>

 

第六种:

<script src="" type="text/javascript"></script><script type="text/javascript">uaredirect("你要重定位的网站");</script>

个人推荐第六种,这个js文件可以下载下来存在本地,这一种的代码也比较简短一些!

TAG标签:
版权声明:本文由990888藏宝阁发布于关于计算机,转载请注明出处:JS推断手机访谈跳转到手提式有线话机站,php决断