php手機跳轉程式碼是什麼

2020-10-10 12:01:10

php手機跳轉程式碼是【function wappc($ac='towap'){$is_wap=checkmobile();if($is_wap){ if($_SERVER['HTTP_HOST']==...】。

推薦:《》

php實現手機站自動跳轉

php實現手機站自動跳轉 ,意思是說,用手機存取PC站,會自動跳轉到對應的wap站點。

要實現這個功能,我們要三步走。

第一步,判斷存取的終端是否為手機,程式碼如下

/** *  * 根據php的$_SERVER['HTTP_USER_AGENT'] 中各種瀏覽器存取時所包含各個瀏覽器特定的字串來判斷是屬於PC還是行動端 *行動端,返回true*程式設計師人生 wfuyu.com 2016-0317 */function checkmobile() { global $_G; $mobile = array();//各個觸控瀏覽器中$_SERVER['HTTP_USER_AGENT']所包含的字串陣列 static $touchbrowser_list =array('iphone', 'android', 'phone', 'mobile', 'wap', 'netfront', 'java', 'opera mobi', 'opera mini',    'ucweb', 'windows ce', 'symbian', 'series', 'webos', 'sony', 'blackberry', 'dopod', 'nokia', 'samsung',    'palmsource', 'xda', 'pieplus', 'meizu', 'midp', 'cldc', 'motorola', 'foma', 'docomo', 'up.browser',    'up.link', 'blazer', 'helio', 'hosin', 'huawei', 'novarra', 'coolpad', 'webos', 'techfaith', 'palmsource',    'alcatel', 'amoi', 'ktouch', 'nexian', 'ericsson', 'philips', 'sagem', 'wellcom', 'bunjalloo', 'maui', 'smartphone',    'iemobile', 'spice', 'bird', 'zte-', 'longcos', 'pantech', 'gionee', 'portalmmm', 'jig browser', 'hiptop',    'benq', 'haier', '^lct', '320x320', '240x320', '176x220');//window手機瀏覽器陣列【猜的】 static $mobilebrowser_list =array('windows phone');//wap瀏覽器中$_SERVER['HTTP_USER_AGENT']所包含的字串陣列 static $wmlbrowser_list = array('cect', 'compal', 'ctl', 'lg', 'nec', 'tcl', 'alcatel', 'ericsson', 'bird', 'daxian', 'dbtel', 'eastcom',   'pantech', 'dopod', 'philips', 'haier', 'konka', 'kejian', 'lenovo', 'benq', 'mot', 'soutec', 'nokia', 'sagem', 'sgh',   'sed', 'capitel', 'panasonic', 'sonyericsson', 'sharp', 'amoi', 'panda', 'zte'); $pad_list = array('pad', 'gt-p1000'); $useragent = strtolower($_SERVER['HTTP_USER_AGENT']); if(dstrpos($useragent, $pad_list)) {  return false; } if(($v = dstrpos($useragent, $mobilebrowser_list, true))){  $_G['mobile'] = $v;  return '1'; } if(($v = dstrpos($useragent, $touchbrowser_list, true))){  $_G['mobile'] = $v;  return '2'; } if(($v = dstrpos($useragent, $wmlbrowser_list))) {  $_G['mobile'] = $v;  return '3'; //wml版 } $brower = array('mozilla', 'chrome', 'safari', 'opera', 'm3gate', 'winwap', 'openwave', 'myop'); if(dstrpos($useragent, $brower)) return false; $_G['mobile'] = 'unknown';//對於未知型別的瀏覽器,通過$_GET['mobile']引數來決定是否是手機瀏覽器 if(isset($_G['mobiletpl'][$_GET['mobile']])) {  return true; } else {  return false; }}/** * 判斷$arr中元素字串是否有出現在$string中 * @param  $string     $_SERVER['HTTP_USER_AGENT']  * @param  $arr          各中瀏覽器$_SERVER['HTTP_USER_AGENT']中必定會包含的字串 * @param  $returnvalue 返回瀏覽器名稱還是返回布林值,true為返回瀏覽器名稱,false為返回布林值【預設】* @程式設計師人生 wfuyu.com 2016-0317 */function dstrpos($string, $arr, $returnvalue = false) { if(empty($string)) return false; foreach((array)$arr as $v) {  if(strpos($string, $v) !== false) {   $return = $returnvalue ? $v : true;   return $return;  } } return false;}

第二步,在手機端使用程式碼跳轉,程式碼如下

function wappc($ac='towap'){  $is_wap=checkmobile();  if($is_wap){  //手機端     if($_SERVER['HTTP_HOST']=='www.wfuyu.com' && $_GET['b']!='topc'){   $url='http://m.wfuyu.com'.$_SERVER['REQUEST_URI'];     header('Location: '.$url); }      }else{  //PC端    }

這裡有個注意的地方,我這個方法,必須手機端url和電腦端同步,例如電腦端地址是www.xxx.com/123.com,那麼對應的手機端應該是m.xxx.com/123.com

第三步:在手機端head前面呼叫步驟2中的程式碼

這裡做個說明,我們經常看到,有的手機網站,首頁會顯示 電腦端的連結,此時點選電腦端,不會再跳到手機端,這裡就要做個相應的處理,例如我們用在連結後面加個get標籤 b=topc,然後在第二步函數中進行判斷過濾即可!

以上就是php手機跳轉程式碼是什麼的詳細內容,更多請關注TW511.COM其它相關文章!