用PHP实现简单的用户代理(移动和智能手机)检测和重定向
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用PHP实现简单的用户代理(移动和智能手机)检测和重定向相关的知识,希望对你有一定的参考价值。
Though an old post, this is my solution that's been pieced together from various comments on the article linked above.
<?php function is_mobile(){ // returns true if one of the specified mobile browsers is detected $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'])); } /* allow the user a way to force either the full or mobile versions of the site - use a GET parameter on requests: include links to both versions of the site w/ the special force mode parameters, 'mobile' and 'full': <a href="http://www.example.org/?mobile">View Mobile Site</a> <a href="http://www.example.org/?full">View Full Site</a> Always check for 'mobile' or 'full' parameters before accounting for any User-Agent conditions: */ if ($_GET['mobile']) { $is_mobile = true; } if ($_GET['full']) { $is_mobile = false; } if($is_mobile) { //it's a mobile browser, do something } else { //it's not a mobile browser, do something else // or instead of a redirect, simply build html below } ?>
以上是关于用PHP实现简单的用户代理(移动和智能手机)检测和重定向的主要内容,如果未能解决你的问题,请参考以下文章