Zblog教程:php判断各种移动端设备的函数
当我们需要分别判断 iPhone、Android以及iPad甚至QQ微信等等,那么我们该如何判断呢?以下代码来判断各种移动端设备终端。
移动端设备各种判断函数
将以下代码添加到当前使用的Zblog主题的include.php中
// 移动端设备各种判断函数 function is_ipad() { // 只检测iPad $bro_msg = GetGuestAgent(); $is_ipad = (bool) strpos($bro_msg,'iPad'); if ($is_ipad) return true; else return false; } function is_iphone() { // 只检测iPhone $bro_msg = GetGuestAgent(); $cn_is_iphone = (bool) strpos($bro_msg,'iPhone'); if ($cn_is_iphone) return true; else return false; } function is_ios() { // 检测所有iOS设备 if (is_iphone() || is_ipad()) return true; else return false; } function is_android() { // 检测所有android设备 $bro_msg = GetGuestAgent(); $is_android = (bool) strpos($bro_msg,'Android'); if ($is_android) return true; else return false; } function is_android_mobile() { // 只检测Android手机 $bro_msg = GetGuestAgent(); $is_android = (bool) strpos($bro_msg,'Android'); $is_android_m = (bool) strpos($bro_msg,'Mobile'); if ($is_android && $is_android_m) return true; else return false; } function is_android_tablet() { // 只检测Android平板电脑 if (is_android() && !is_android_mobile()) return true; else return false; } function is_mobile_device() { // 检测Android手机、iPhone if (is_android_mobile() || is_iphone()) return true; else return false; } function is_tablet() { // 检测Android平板电脑和iPad if ((is_android() && !is_android_mobile()) || is_ipad()) return true; else return false; } function is_weixin() { // 检测微信 $bro_msg = GetGuestAgent(); if(stripos($bro_msg,'MicroMessenger') !== false ) return true; else return false; } function is_QQ() { // 检测手机QQ $bro_msg = GetGuestAgent(); if (strpos($bro_msg, 'iPhone') !== false || strpos($bro_msg, 'iPad') !== false) { if (strpos($bro_msg,' QQ') !==false) return true;//苹果qq打开 } elseif (strpos($bro_msg, 'Android') !== false ) { if (strpos($bro_msg,'MQQBrowser') !==false) { if(strpos($bro_msg, '_SQ_') !== false) return true;//安卓qq打开 } } else return false; }
模板调用
{if is_mobile_device()}这里是你Android手机、iPhone显示内容{/if}
其他CMS
以上代码仅适合zblog,那么倘若你是其他CMS
请把上述代码中的GetGuestAgent()替换为$_SERVER['HTTP_USER_AGENT'] 即可