使用 PHP 内置函数 get_browser() 判断是否是移动浏览器
get_browser — 获取浏览器具有的功能。该函数通过查找 browscap.ini 文件中的浏览器信息,尝试检测用户的浏览器所具有的功能。
由于许可证的问题,PHP 未提供浏览器功能文件,可以从 Browscap 得到浏览器功能文件,可以在 http://browscap.org/ 下载 php_browscap.ini 文件。
下载之后,需要在 php.ini 中设置(Win 下):
browscap=D:\wamp\bin\php\php5.5.12\browscap.ini
或者(Linux 下)
browscap=/usr/local/php/lib/php/browscap.ini
此时可以在 php 文件中打印出 get_browser()
var_dump(get_browser());
输出:
object(stdClass)# () {
["browser_name_regex"]=>
string() "~^mozilla/5\.0 \(.*windows nt 10\.0.*\) applewebkit/.* \(khtml, like gecko\) chrome/49\..*safari/.*$~"
["browser_name_pattern"]=>
string() "Mozilla/5.0 (*Windows NT 10.0*) AppleWebKit/* (KHTML, like Gecko) Chrome/49.*Safari/*"
["parent"]=>
string() "Chrome 49.0"
["platform"]=>
string() "Win10"
["comment"]=>
string() "Chrome 49.0"
["browser"]=>
string() "Chrome"
["browser_maker"]=>
string() "Google Inc"
["version"]=>
string() "49.0"
["majorver"]=>
string() ""
["device_type"]=>
string() "Desktop"
["device_pointing_method"]=>
string() "mouse"
["minorver"]=>
string() ""
["ismobiledevice"]=>
string() ""
["istablet"]=>
string() ""
["crawler"]=>
string() ""
}
可以通过以下代码来判断是否是移动端浏览器:
<?php $ismobiledevice = get_browser()->ismobiledevice;
if($ismobiledevice) {
//移动端设备
} else {
//PC端
}
参考:
<PHP Cookbook>,3rd
使用 PHP 内置函数 get_browser() 判断是否是移动浏览器的更多相关文章
- python学习之路-4 内置函数和装饰器
本篇涉及内容 内置函数 装饰器 内置函数 callable() 判断对象是否可以被调用,返回一个布尔值 1 2 3 4 5 6 7 8 9 10 11 num = 10 print(callabl ...
- golang中字符串内置函数整理
字符串内置函数 1. 判断字符串的长度 str := "korea国" fmt.Println("str len=", len(str)) 2. 字符串遍历,同 ...
- 【原创】Matlab.NET混合编程技巧之找出Matlab内置函数
本博客所有文章分类的总目录:[总目录]本博客博文总目录-实时更新 Matlab和C#混合编程文章目录 :[目录]Matlab和C#混合编程文章目录 Matlab与.N ...
- Matlab.NET混编技巧之——找出Matlab内置函数
原文 http://www.cnblogs.com/asxinyu/p/3295309.html Matlab与.NET的混合编程,掌握了基本过程,加上一定的开发经验和算法基础,肯 定不难.反之,有时 ...
- Matlab.NET混合编程技巧之——找出Matlab内置函数
原文:[原创]Matlab.NET混合编程技巧之--找出Matlab内置函数 Matlab与.NET的混合编程,掌握了基本过程,加上一定的开发经验和算法基础,肯定不难.反之,有时候一个小错误,可能抓破 ...
- Matlab内置函数
[原创]Matlab.NET混编技巧之——找出Matlab内置函数 Matlab与.NET的混合编程,掌握了基本过程,加上一定的开发经验和算法基础,肯定不难.反之,有时候一个小错误,可能抓破脑袋, ...
- python内置函数
python内置函数 官方文档:点击 在这里我只列举一些常见的内置函数用法 1.abs()[求数字的绝对值] >>> abs(-13) 13 2.all() 判断所有集合元素都为真的 ...
- python之常用内置函数
python内置函数,可以通过python的帮助文档 Build-in Functions,在终端交互下可以通过命令查看 >>> dir("__builtins__&quo ...
- freemarker内置函数和用法
原文链接:http://www.iteye.com/topic/908500 在我们应用Freemarker 过程中,经常会操作例如字符串,数字,集合等,却不清楚Freemrker 有没有类似于Jav ...
随机推荐
- 【ZJOI2008】 树的统计 count
Description 一 棵树上有n个节点,编号分别为1到n,每个节点都有一个权值w.我们将以下面的形式来要求你对这棵树完成一些操作: I. CHANGE u t : 把结点u的权值改为t II. ...
- map set区别
STL中的容器有顺序容器 (vector,list,deque),关联容器(map,set)还有一些其他容器.根据不同的场合选择不同的容器,会有意想不到的收获. Map是单词mapping(映射)的缩 ...
- Java GridBagLayout 简单使用
这里只介绍了很基础布局构建及使用,主要是关于 GridBagLayout. 首先整套流程大概是, 声明一个 GridBagLayout 对象 private GridBagLayout gridBag ...
- LINK1123:failure during conversion to COFF:file invalid or corrupt
参考 http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=20726500&id=4528320 试了微软官方说明:http ...
- Note3 :《集体智慧编程》用户相似度计算
欧几里德距离评价: 以经过人们一致评价的物品为坐标轴,然后将参与评价的人绘制到图上,并考察他们彼此之间的距离远近.计算出每一轴向上的差值,求平方之后再相加,最后对总和取平方根. # -*- codin ...
- Pyqt 控件的信号槽事件定义方法
转载来自:http://my.oschina.net/midnite/blog/39399 Qt采用信号槽来设定UI界面上元素动作的事件绑定.自Qt4.5开始,引入了一个新的信号槽与事件绑定的方法.界 ...
- html标准
html1.使用双引号2. <img src=""> 不添加/3. <html lang="zh-CN">4. <a class= ...
- MemCache
MemCache是一个自由.源码开放.高性能.分布式的分布式内存对象缓存系统,用于动态Web应用以减轻数据库的负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高了网站访问的速度.Mem ...
- jq switch case
switch (cnt) { case ("string1"): ... ...
- php 正则 常用基础
正则表达式 用来描述一串字符串的字符串 定界符 除了字母数字反斜线之外的所有字符都可以 / / (强制使用) | | !! 原子 在自然界中的最小单位 叫做原子 正则中的原子:可以打印的字母,数字,符 ...