透過分析 $_SERVER['HTTP_USER_AGENT'] 識別行動裝置,提供不同內容呈現。
<?php
function isMobile(){
$useragent = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : '';
$useragent_commentsblock = preg_match('|\(.*?\)|',$useragent,$matches) > 0 ? $matches[0] : '';
function CheckSubstrs($substrs,$text){
foreach($substrs as $substr) if(false!==strpos($text,$substr)) return true;
return false;
}
$mobile_os_list = array('Google Wireless Transcoder','Windows CE','WindowsCE','Symbian','Android','armv6l','armv5','Mobile','CentOS','mowser','AvantGo','Opera Mobi','J2ME/MIDP','Smartphone','Go.Web','Palm','iPAQ');
$mobile_token_list = array('Profile/MIDP','Configuration/CLDC-','160×160','176×220','240×240','240×320','320×240','UP.Browser','UP.Link','SymbianOS','PalmOS','PocketPC','SonyEricsson','Nokia','BlackBerry','Vodafone','BenQ','Novarra-Vision','Iris','NetFront','HTC_','Xda_','SAMSUNG-SGH','Wapaka','DoCoMo','iPhone','iPod');
$found_mobile = CheckSubstrs($mobile_os_list,$useragent_commentsblock) || CheckSubstrs($mobile_token_list,$useragent);
return $found_mobile;
}
if (isMobile()) echo '手機登錄 m.php.com';
else echo '電腦登錄 www.php.com';
?>
Mobile_Detect)以提高準確度。