用thinkphp做底层框架,判断客户是用pc访问还是手机访问的。

<?php

$platform = platform();//检测访问平台

//print_r($_SERVER);DIE;

define('FILE_ROOT' , dirname(__FILE__));

define('APP_DEBUG' , true);

define('__BUICK__' , true);//

define('APP_PUBLIC_PATH' , '../Public');

define('THINK_PATH', $platform['THINK_PATH']);

define('APP_NAME'  , $platform['APP_NAME']);

define('APP_PATH'  , $platform['APP_PATH']);

require(THINK_PATH.'/ThinkPHP.php');

/**

* 返回平台参数

* 默认返回PC端配置

*/

function platform(){

$form = array( 'Pc'     => array('THINK_PATH' => './App/ThinkPHP/','APP_NAME'    => 'App','APP_PATH'    => './App/' ) ,

'Moblie' => array('THINK_PATH' => './Moblie/ThinkPHP/','APP_NAME' => 'Moblie','APP_PATH' => './Moblie/' ) );

$form_key = is_mobile();

return $form[$form_key];

}

//判断是否属手机

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","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 = 'Pc';//默认PC端

foreach ($mobile_agents AS $device) {

if (stristr($user_agent, $device)) {

$is_mobile = 'Moblie';

break;

}

}

//针对移动端没有对应显示样式,需要显示PC端样式的活动

if(strstr($_SERVER['REQUEST_URI'],'?mobiletopc')){

$is_mobile = 'Pc';

}

return $is_mobile;

}

?>

PHP 判断终端是手机还是电脑访问网站代码的更多相关文章

  1. php判断终端是手机还是电脑访问网站代码

    ?php function check_wap() { if (isset($_SERVER['HTTP_VIA'])) return true; if (isset($_SERVER['HTTP_X ...

  2. js判断是手机还是电脑访问网站

    js判断是手机还是电脑访问网站                               <script type="text/javascript"> <!- ...

  3. JS判断手机还是电脑访问网站

    function check() { let browser = navigator.userAgent;//用户访问的类型 let phone = ["Android", &qu ...

  4. js判断终端是手机还是电脑

    $(function(){ function browserRedirect() { var sUserAgent= navigator.userAgent.toLowerCase(); var bI ...

  5. PHP判断手机、电脑访问

    /*判断用户是手机访问还是电脑访问*/$useragent = $_SERVER['HTTP_USER_AGENT']; if (preg_match('/(android|bb\d+|meego). ...

  6. PHP和JS判断手机还是电脑访问

    当用户使用手机等移动终端访问网站时,我们可以通过程序检测用户终端类型,如果是手机用户,则引导用户访问适配手机屏幕的移动站点.本文将介绍分别使用PHP和JAVASCRIPT代码判断用户终端类型. PHP ...

  7. discuz php判断是手机访问还是电脑访问网站

    首先在模块处填入代码: //手机网页跳转 //如果检测到访问的浏览器为下列一个指定的移动浏览器 则返回true function is_mobile(){ $regex_match="/(n ...

  8. javascript如何判断是手机还是电脑访问本网页

    var system ={}; var p = navigator.platform; system.win = p.indexOf("Win") == 0; system.mac ...

  9. java判断手机还是电脑访问

    很多博客写的很复杂,没具体看.我只用下面的几行代码 String userAgent = req.getHeader("user-agent"); ) { //安卓 } ) || ...

随机推荐

  1. 【Luogu P2765】魔术球问题

    Luogu P2765 一开始看到这道题完全想不到怎么做,绞尽脑汁也想不到怎么去构造这个网络流模型. 于是查看了多篇题解--学习了多篇题解的讲解,终于找到了思路. 本文参考了洛谷 这一道题的题意并不难 ...

  2. js继承的几种方法理解和代码演示

    1.属性继承 :call .apply:不建议使用浪费内存. function Person(name,age,sex){ this.name = name; this.age = age; this ...

  3. 1.JVM前奏篇(看官网怎么说)

    JVM(Java Virtual Machine) 前奏篇(看官网规范怎么说) 1.The relation of JDK/JRE/JVM 在下图中,我们所接触的,最熟悉,也是经常打交道的 最顶层 J ...

  4. go条件变量的使用和原理

    场景 最近写代码时碰到一个场景, 需要使用 map[int]struct{} 结构来存储task, map的key是task的id,随时可以增减.因为的确除了看书,基本上没使用过条件变量所以后面过了一 ...

  5. Numpy学习笔记(上篇)

    目录 Numpy学习笔记(上篇) 一.Jupyter Notebook的基本使用 二.Jpuyter Notebook的魔法命令 1.%run 2.%timeit & %%timeit 3.% ...

  6. (二)pdf的构成综述

    引自:https://blog.csdn.net/steve_cui/article/details/81948486 一个pdf文件主要是由4部分构成:文件头.文件体.交叉引用表.文件尾 文件头:用 ...

  7. rsync 使用

    rsync命令是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件. rsync使用所谓的“rsync算法”来使本地和远程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分, ...

  8. [洛谷P5323][BJOI2019]光线

    题目大意:有$n$层玻璃,每层玻璃会让$a\%$的光通过,并把$b\%$的光反射.有一束光从左向右射过,问多少的光可以透过这$n$层玻璃 题解:事实上会发现,可以把连续的几层玻璃合成一层玻璃,但是要注 ...

  9. 自定义 Generate POJOs.groovy

    一.Generate文件 import com.intellij.database.model.DasTable import com.intellij.database.model.ObjectKi ...

  10. kubernetes第八章--NFS PersistentVolume