目前,一个网站有多个版本是很正常的,如PC版,3G版,移动版等等。根据不同的浏览设备我们需要定向到不同的版本中。不仅如此,我们有时候还需要根据不同的客户端加载不同的CSS,因此我们需要能够检测浏览设备,SO,我们就需要用到“mobile detection”类库。
“mobile detection”是一个轻量级移动设备检测的PHP类库,它采用结合特定的HTTP标头中的User-Agent字符串来检测移动客户端环境。注意,mobile detection 只是一个服务器端(PHP)的检测工具,并不能代替响应式Web设计或其他任何形式的客户端功能检测。
mobile detection 类库下载地址:https://github.com/serbanghita/Mobile-Detect
实例1:根据设备重定向到其他版本
当我们使用移动设备浏览某网站时,需要定向到该网站的移动版,首先将具有检测功能的文件Mobile_Detect.php包含到网页中或主页中,现在我们来实现浏览www.xiaoyuit.com网站时重定向到m.xiaoyuit.com中:
/*根据文件位置更改路径信息*/ require_once 'Mobile_Detect.php'; $detect = new Mobile_Detect; if($detect->isMobile()) { header('Location: http://m.xiaoyuit.com/'); exit; } 这是定向到移动网站,下面还有其他形式的重定向: //所有平板设备 if( $detect->isTablet()) { } //是移动但非平板设备 if( $detect->isMobile() && !$detect->isTablet()) { } //IOS系统 if( $detect->isiOS()) { } //Android系统 if( $detect->isAndroidOS()) { } //WindowsPhone系统 if( $detect->isWindowsPhoneOS()) { }
实例2:根据不同设备加载不同资源
如上所述,我们还可以根据不同的浏览设备加载不同的CSS文件。如:
$detect = new Mobile_Detect; if($detect->isMobile() || $detect->isTablet()) { echo ""; } else { echo ""; }
注意,mobile detection是一个移动设备检测平台,随着科技的进步会有不同的设备出现,因此你需要随时更新类库,这样才能保证检测的准确性。