1. <source id="rxoyr"><mark id="rxoyr"></mark></source>

    <b id="rxoyr"><address id="rxoyr"><bdo id="rxoyr"></bdo></address></b>
  2. <source id="rxoyr"></source>
    <u id="rxoyr"><sub id="rxoyr"></sub></u><var id="rxoyr"><td id="rxoyr"></td></var><b id="rxoyr"></b>

      0712-2888027 189-8648-0214
      微信公眾號

      孝感風信網絡科技有限公司微信公眾號

      當前位置:主頁 > 技術支持 > PHP > laravel框架開發:根據訪問設備匹配pc端或手機端界面

      laravel框架開發:根據訪問設備匹配pc端或手機端界面

      時間:2024-05-19來源:風信官網 點擊: 1399次
      以下代碼為根據終端不同的訪問設備,利用laravel框架的view返回不同的模板,在不改變用戶訪問url情況下,根據訪問設備匹配不同的PC端或手機端模板效果。
       
      在controller控制器中進行訪問設置的判斷:
       
      $isMobile = $this->isMobile();
      
      if ($isMobile) {
      	return view('mobile'); //移動端模板
      } else {
      	return view('pc'); //PC端模板
      }
      
      
      //判斷是否是移動端訪問
         public function isMobile()
          {
              // 如果有HTTP_X_WAP_PROFILE則一定是移動設備
              if (isset ($_SERVER['HTTP_X_WAP_PROFILE'])) {
                  return TRUE;
              }
              // 如果via信息含有wap則一定是移動設備,部分服務商會屏蔽該信息
              if (isset ($_SERVER['HTTP_VIA'])) {
                  return stristr($_SERVER['HTTP_VIA'], "wap") ? TRUE : FALSE;// 找不到為flase,否則為TRUE
              }
              // 判斷手機發送的客戶端標志,兼容性有待提高
              if (isset ($_SERVER['HTTP_USER_AGENT'])) {
                  $clientkeywords = array(
                      'mobile',
                      'nokia',
                      'sony',
                      'ericsson',
                      'mot',
                      'samsung',
                      'htc',
                      'sgh',
                      'lg',
                      'sharp',
                      'sie-',
                      'philips',
                      'panasonic',
                      'alcatel',
                      'lenovo',
                      'iphone',
                      'ipod',
                      'blackberry',
                      'meizu',
                      'android',
                      'netfront',
                      'symbian',
                      'ucweb',
                      'windowsce',
                      'palm',
                      'operamini',
                      'operamobi',
                      'openwave',
                      'nexusone',
                      'cldc',
                      'midp',
                      'wap'
                  );
                  // 從HTTP_USER_AGENT中查找手機瀏覽器的關鍵字
                  if (preg_match("/(" . implode('|', $clientkeywords) . ")/i", strtolower($_SERVER['HTTP_USER_AGENT']))) {
                      return TRUE;
                  }
              }
              if (isset ($_SERVER['HTTP_ACCEPT'])) { // 協議法,因為有可能不準確,放到最后判斷
                  // 如果只支持wml并且不支持html那一定是移動設備
                  // 如果支持wml和html但是wml在html之前則是移動設備
                  if ((strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') !== FALSE) && (strpos($_SERVER['HTTP_ACCEPT'], 'text/html') === FALSE || (strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') < strpos($_SERVER['HTTP_ACCEPT'], 'text/html')))) {
                      return TRUE;
                  }
              }
              return FALSE;
          }
       
      欄目列表
      推薦內容
      熱點內容
      展開
      欧美高清cheng人_亚洲人AV在线不卡_精品国产亚洲一区二区在线_免费精品自在久久_最新亚洲人成在线观看