最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

判斷訪客終端類型集錦

 更新時(shí)間:2015年06月05日 10:35:13   投稿:hebedich  
本文給大家講解的是使用php和javascript實(shí)現(xiàn)的判斷訪客終端類型的方法集錦,十分的簡(jiǎn)單實(shí)用,有需要的小伙伴可以參考下。

當(dāng)用戶使用手機(jī)等移動(dòng)終端訪問網(wǎng)站時(shí),我們可以通過程序檢測(cè)用戶終端類型,如果是手機(jī)用戶,則引導(dǎo)用戶訪問適配手機(jī)屏幕的移動(dòng)站點(diǎn)。本文將介紹分別使用PHP和JAVASCRIPT代碼判斷用戶終端類型。

PHP版

我們使用PHP的$_SERVER['HTTP_USER_AGENT']來獲取手機(jī)用戶瀏覽器的用戶代理,然后匹配已有的各種手機(jī)瀏覽器代理庫,如果含有匹配的關(guān)鍵字,則判斷為手機(jī)(移動(dòng)終端)用戶。

 
function is_mobile() { 
  $user_agent = $_SERVER['HTTP_USER_AGENT']; 
  $mobile_agents = array("240x320","acer","acoon","acs-","abacho","ahong","airness","alcatel","amoi", 
  "android","anywhereyougo.com","applewebkit/525","applewebkit/532","asus","audio", 
  "au-mic","avantogo","becker","benq","bilbo","bird","blackberry","blazer","bleu", 
  "cdm-","compal","coolpad","danger","dbtel","dopod","elaine","eric","etouch","fly ", 
  "fly_","fly-","go.web","goodaccess","gradiente","grundig","haier","hedy","hitachi", 
  "htc","huawei","hutchison","inno","ipad","ipaq","iphone","ipod","jbrowser","kddi", 
  "kgt","kwc","lenovo","lg ","lg2","lg3","lg4","lg5","lg7","lg8","lg9","lg-","lge-","lge9","longcos","maemo", 
  "mercator","meridian","micromax","midp","mini","mitsu","mmm","mmp","mobi","mot-", 
  "moto","nec-","netfront","newgen","nexian","nf-browser","nintendo","nitro","nokia", 
  "nook","novarra","obigo","palm","panasonic","pantech","philips","phone","pg-", 
  "playstation","pocket","pt-","qc-","qtek","rover","sagem","sama","samu","sanyo", 
  "samsung","sch-","scooter","sec-","sendo","sgh-","sharp","siemens","sie-","softbank", 
  "sony","spice","sprint","spv","symbian","tablet","talkabout","tcl-","teleca","telit", 
  "tianyu","tim-","toshiba","tsm","up.browser","utec","utstar","verykool","virgin", 
  "vk-","voda","voxtel","vx","wap","wellco","wig browser","wii","windows ce", 
  "wireless","xda","xde","zte"); 
  $is_mobile = false; 
  foreach ($mobile_agents as $device) { 
    if (stristr($user_agent, $device)) { 
      $is_mobile = true; 
      break; 
    } 
  } 
  return $is_mobile; 
} 

上述代碼中函數(shù)is_mobile()來判斷用戶終端類型,將收集到的當(dāng)今各種手機(jī)的HTTP_USER_AGENT歸結(jié)到數(shù)組$mobile_agents中,并進(jìn)行匹配。使用時(shí)只需調(diào)用函數(shù)is_mobile()。如以下代碼表示,當(dāng)匹配用戶為手機(jī)訪問時(shí),頁面跳轉(zhuǎn)到網(wǎng)站手機(jī)版m.jb51.net。

 
if (is_mobile()) { 
  header('Location:http://m.jb51.net'); 
} else { 
  echo '請(qǐng)使用手機(jī)訪問.'; 
} 

Javascript版

您也可以直接在前端頁面上加入一段Javascript腳本來判斷用戶的終端類型。Javascript也是通過獲取瀏覽器的user-agent信息,然后匹配已有的user-agent信息庫。

 
if ((navigator.userAgent.match(/(iPhone|iPod|Android|ios|iOS|iPad|Backerry| 
WebOS|Symbian|Windows Phone|Phone)/i))) { 
  location.replace("http://m.jb51.net") 
}else{ 
  document.write("請(qǐng)使用手機(jī)訪問."); 
} 

以上代碼還不是很完善,有興趣的朋友歡迎補(bǔ)充。

當(dāng)然,我們也可以通過響應(yīng)式布局來匹配各種不同屏幕,這樣可以節(jié)約開發(fā)成本,但是當(dāng)客戶對(duì)移動(dòng)網(wǎng)站的功能需求,對(duì)于獨(dú)立的移動(dòng)站點(diǎn)最好是采用在網(wǎng)站入口處判斷用戶訪問終端類型,一般是我們?cè)谥髡臼醉摼妥雠袛?,如果是手機(jī)訪客則跳轉(zhuǎn)到手機(jī)版頁面,否則按正常PC方式訪問頁面。

相關(guān)文章

  • Bootstrap php制作動(dòng)態(tài)分頁標(biāo)簽

    Bootstrap php制作動(dòng)態(tài)分頁標(biāo)簽

    這篇文章主要為大家詳細(xì)介紹了Bootstrap php制作動(dòng)態(tài)分頁標(biāo)簽的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • 80行代碼寫一個(gè)Webpack插件并發(fā)布到npm

    80行代碼寫一個(gè)Webpack插件并發(fā)布到npm

    最近在學(xué)習(xí) Webpack 相關(guān)的原理,本文用80行代碼寫一個(gè)Webpack插件并發(fā)布到npm,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-05-05
  • countUp.js實(shí)現(xiàn)數(shù)字滾動(dòng)效果

    countUp.js實(shí)現(xiàn)數(shù)字滾動(dòng)效果

    這篇文章主要為大家詳細(xì)介紹了countUp.js實(shí)現(xiàn)數(shù)字滾動(dòng)效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-10-10
  • JS 實(shí)現(xiàn)緩存算法的示例(FIFO/LRU)

    JS 實(shí)現(xiàn)緩存算法的示例(FIFO/LRU)

    這篇文章主要介紹了JS 實(shí)現(xiàn)緩存算法的示例(FIFO/LRU),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-03-03
  • WebStorm ES6 語法支持設(shè)置&babel使用及自動(dòng)編譯(詳解)

    WebStorm ES6 語法支持設(shè)置&babel使用及自動(dòng)編譯(詳解)

    下面小編就為大家?guī)硪黄猈ebStorm ES6 語法支持設(shè)置&babel使用及自動(dòng)編譯(詳解)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-09-09
  • JS模擬鍵盤打字效果的方法

    JS模擬鍵盤打字效果的方法

    這篇文章主要介紹了JS模擬鍵盤打字效果的方法,涉及javascript鼠標(biāo)事件及字符串操作的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-08-08
  • JS延遲加載(setTimeout) JS最后加載

    JS延遲加載(setTimeout) JS最后加載

    為了讓一個(gè)廣告幾秒以后再執(zhí)行所以做個(gè)延遲加載的東東,用了JS實(shí)現(xiàn),還蠻好用的,算是分享,也是記錄吧。
    2010-07-07
  • 如何正確理解javascript的模塊化

    如何正確理解javascript的模塊化

    模塊化在項(xiàng)目中十分的重要,一個(gè)復(fù)雜的項(xiàng)目肯定有很多相似的功能模塊,如果每次都需要重新編寫模塊肯定既費(fèi)時(shí)又耗力。但是引用別人編寫模塊的前提是要有統(tǒng)一的“打開姿勢(shì)”,如果每個(gè)人有各自的寫法,那么肯定會(huì)亂套,下面介紹幾種JS的模塊化的規(guī)范。
    2017-03-03
  • 利用H5api實(shí)現(xiàn)時(shí)鐘的繪制(javascript)

    利用H5api實(shí)現(xiàn)時(shí)鐘的繪制(javascript)

    這篇文章主要為大家詳細(xì)介紹了利用H5api實(shí)現(xiàn)時(shí)鐘的繪制,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-09-09
  • 詳解JavaScript基本類型和引用類型

    詳解JavaScript基本類型和引用類型

    這篇文章主要介紹了JavaScript基本類型和引用類型,基本類型中還包含了類型轉(zhuǎn)換,感興趣的小伙伴們可以參考一下
    2015-12-12

最新評(píng)論

榆中县| 南川市| 信阳市| 黔江区| 景谷| 高邑县| 永新县| 枣庄市| 西畴县| 河东区| 根河市| 永胜县| 万宁市| 云龙县| 金坛市| 柳江县| 青铜峡市| 盈江县| 镇原县| 保德县| 阿拉善左旗| 明水县| 和龙市| 长阳| 富民县| 永嘉县| 隆尧县| 苗栗县| 赫章县| 太白县| 沛县| 白玉县| 崇礼县| 翼城县| 普格县| 文成县| 华安县| 仙居县| 平阴县| 盐池县| 故城县|