日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > php >内容正文

php

TP3.2.x判断手机端访问并设置默认访问模块的方法 - ThinkPHP框架

發布時間:2025/3/15 php 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 TP3.2.x判断手机端访问并设置默认访问模块的方法 - ThinkPHP框架 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

手機端訪問時調用Wap手機模塊,實現在手機端訪問時展示出手機網站,無需跳轉域名
首先我們在./Application/Common/Conf/ 目錄下建立兩個公共配置文件:config.php 和config_wap.php

config.php 中:

  • return?array(
  • ????'DEFAULT_MODULE'=>'Index',
  • ????'DEFAULT_CONTROLLER'=>'Index',
  • ????'DEFAULT_ACTION'=>'index',
  • )
  • 復制代碼

    config_wap.php 中:

  • return?array(
  • ????'DEFAULT_MODULE'=>'Wap',
  • ????'DEFAULT_CONTROLLER'=>'Index',
  • ????'DEFAULT_ACTION'=>'index',
  • )
  • 復制代碼

    然后在入口文件 index.php 中加入手機端判斷方法(建議放到最下面):

  • function?is_mobile_request(){
  • ????$_SERVER['ALL_HTTP']?=?isset($_SERVER['ALL_HTTP'])???$_SERVER['ALL_HTTP']?:?'';
  • ????$mobile_browser?=?'0';
  • ????if(preg_match('/(up.browser|up.link|mmp|symbian|smartphone|midp|wap|phone|iphone|ipad|ipod|android|xoom)/i',?strtolower($_SERVER['HTTP_USER_AGENT'])))
  • ????????$mobile_browser++;
  • ????if((isset($_SERVER['HTTP_ACCEPT']))?and?(strpos(strtolower($_SERVER['HTTP_ACCEPT']),'application/vnd.wap.xhtml+xml')?!==?false))
  • ????????$mobile_browser++;
  • ????if(isset($_SERVER['HTTP_X_WAP_PROFILE']))
  • ????????$mobile_browser++;
  • ????if(isset($_SERVER['HTTP_PROFILE']))
  • ????????$mobile_browser++;
  • ????????$mobile_ua?=?strtolower(substr($_SERVER['HTTP_USER_AGENT'],0,4));
  • ????????$mobile_agents?=?array(
  • ????????????'w3c?','acs-','alav','alca','amoi','audi','avan','benq','bird','blac',
  • ????????????'blaz','brew','cell','cldc','cmd-','dang','doco','eric','hipt','inno',
  • ????????????'ipaq','java','jigs','kddi','keji','leno','lg-c','lg-d','lg-g','lge-',
  • ????????????'maui','maxo','midp','mits','mmef','mobi','mot-','moto','mwbp','nec-',
  • ????????????'newt','noki','oper','palm','pana','pant','phil','play','port','prox',
  • ????????????'qwap','sage','sams','sany','sch-','sec-','send','seri','sgh-','shar',
  • ????????????'sie-','siem','smal','smar','sony','sph-','symb','t-mo','teli','tim-',
  • ????????????'tosh','tsm-','upg1','upsi','vk-v','voda','wap-','wapa','wapi','wapp',
  • ????????????'wapr','webc','winw','winw','xda','xda-'
  • ????????);
  • ?????if(in_array($mobile_ua,?$mobile_agents))
  • ??????????$mobile_browser++;
  • ?????if(strpos(strtolower($_SERVER['ALL_HTTP']),?'operamini')?!==?false)
  • ??????????$mobile_browser++;
  • ?????//?Pre-final?check?to?reset?everything?if?the?user?is?on?Windows??
  • ?????if(strpos(strtolower($_SERVER['HTTP_USER_AGENT']),?'windows')?!==?false)
  • ??????????$mobile_browser=0;
  • ?????//?But?WP7?is?also?Windows,?with?a?slightly?different?characteristic??
  • ?????if(strpos(strtolower($_SERVER['HTTP_USER_AGENT']),?'windows?phone')?!==?false)
  • ??????????$mobile_browser++;
  • ?????if($mobile_browser>0)??
  • ??????????return?true;
  • ?????else
  • ??????????return?false;
  • }
  • 復制代碼

    然后,我們開始用關鍵的APP_STATUS來調用不同的模塊:
    在index.php文件中的21行后面也就是“定義應用目錄”結束后,加入代碼:

  • if(is_mobile_request()){
  • ????define('APP_STATUS','config_wap');
  • }else{
  • ????define('APP_STATUS','Index');
  • }
  • 復制代碼

    大功告成。
    參考文檔:http://document.thinkphp.cn/manual_3_2.html#load_config


    【推廣】?【選型推薦】0基礎1小時建站,滿足多種建站需求
    【推廣】?ThinkPHP5.0 入門必讀系列 [ 官方出品 ]

    轉載于:https://www.cnblogs.com/wzjwffg/p/9883845.html

    總結

    以上是生活随笔為你收集整理的TP3.2.x判断手机端访问并设置默认访问模块的方法 - ThinkPHP框架的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。