如果我们要判断访问网站的是手机用户还是PC用户我们只要获取用户的HTTP_USER_AGENT即可,我先介绍了一个通用的Mobile_Detect,后面两个例子是自己写的希望对各位有帮助.
php代码实例如下:
<?php //使用实例 include 'Mobile_Detect.php'; $detect = new Mobile_Detect(); // Check for any mobile device. if ($detect->isMobile()) // Check for any tablet. if ($detect->isTablet()) // Check for any mobile device, excluding tablets. if ($detect->isMobile() && !$detect->isTablet()) if ($detect->isMobile() && !$detect->isTablet()) // Alternative to $detect->isAndroidOS() $detect->is('AndroidOS'); // Batch usage foreach ($userAgents as $userAgent) { $detect->setUserAgent($userAgent); $isMobile = $detect->isMobile(); } // Version check. $detect->version('iPad'); // 4.3 (float) ?>
php判断手机访问,代码如下:
<?php $ua = strtolower($_SERVER['HTTP_USER_AGENT']); $uachar = "/(nokia|sony|ericsson|mot|samsung|sgh|lg|philips|panasonic|alcatel|lenovo|cldc|midp|mobile|wap)/i"; if (($ua == '' || preg_match($uachar, $ua)) && !strpos(strtolower($_SERVER['REQUEST_URI']) , 'wap')) { $Loaction = 'wap/'; if (!emptyempty($Loaction)) { ecs_header("Location: $Loactionn"); exit; } } /** * 自定义 header 函数,用于过滤可能出现的安全隐患 * * @param string string 内容 * * @return void * */ function ecs_header($string, $replace = true, $http_response_code = 0) { if (strpos($string, '../upgrade/index.php') === 0) { echo '<script type="text/javascript">window.location.href="' . $string . '";</script>'; } $string = str_replace(array( "r", "n" ) , array( '', '' ) , $string); if (preg_match('/^s*location:/is', $string)) { @header($string . "n", $replace); exit(); } if (emptyempty($http_response_code) || PHP_VERSION < '4.3') { @header($string, $replace); } else { @header($string, $replace, $http_response_code); } } ?>
js代码如下:
var isIPhone = /iPhone/i.test(navigator.userAgent), isIPad = /iPad/i.test(navigator.userAgent), isAndroid = /android/i.test(navigator.userAgent); var isIOS = isIPhone || isIPad; alert( "iPhone? " + isIPhone + "tr" + "iPad? " + isIPad + "tr" + "Android? " + isAndroid + "tr" + "iOS? " + isIOS);
本文地址:
转载随意,但请附上文章地址:-)