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() 判断是否是移动浏览器的更多相关文章

  1. python学习之路-4 内置函数和装饰器

    本篇涉及内容 内置函数 装饰器 内置函数 callable()   判断对象是否可以被调用,返回一个布尔值 1 2 3 4 5 6 7 8 9 10 11 num = 10 print(callabl ...

  2. golang中字符串内置函数整理

    字符串内置函数 1. 判断字符串的长度 str := "korea国" fmt.Println("str len=", len(str)) 2. 字符串遍历,同 ...

  3. 【原创】Matlab.NET混合编程技巧之找出Matlab内置函数

                  本博客所有文章分类的总目录:[总目录]本博客博文总目录-实时更新    Matlab和C#混合编程文章目录 :[目录]Matlab和C#混合编程文章目录 Matlab与.N ...

  4. Matlab.NET混编技巧之——找出Matlab内置函数

    原文 http://www.cnblogs.com/asxinyu/p/3295309.html Matlab与.NET的混合编程,掌握了基本过程,加上一定的开发经验和算法基础,肯 定不难.反之,有时 ...

  5. Matlab.NET混合编程技巧之——找出Matlab内置函数

    原文:[原创]Matlab.NET混合编程技巧之--找出Matlab内置函数 Matlab与.NET的混合编程,掌握了基本过程,加上一定的开发经验和算法基础,肯定不难.反之,有时候一个小错误,可能抓破 ...

  6. Matlab内置函数

    [原创]Matlab.NET混编技巧之——找出Matlab内置函数   Matlab与.NET的混合编程,掌握了基本过程,加上一定的开发经验和算法基础,肯定不难.反之,有时候一个小错误,可能抓破脑袋, ...

  7. python内置函数

    python内置函数 官方文档:点击 在这里我只列举一些常见的内置函数用法 1.abs()[求数字的绝对值] >>> abs(-13) 13 2.all() 判断所有集合元素都为真的 ...

  8. python之常用内置函数

    python内置函数,可以通过python的帮助文档 Build-in Functions,在终端交互下可以通过命令查看 >>> dir("__builtins__&quo ...

  9. freemarker内置函数和用法

    原文链接:http://www.iteye.com/topic/908500 在我们应用Freemarker 过程中,经常会操作例如字符串,数字,集合等,却不清楚Freemrker 有没有类似于Jav ...

随机推荐

  1. time和datetime时间戳---python

    time模块 time模块提供各种操作时间的函数 说明:一般有两种表示时间的方式:        1.时间戳的方式(相对于1970.1.1 00:00:00以秒计算的偏移量),时间戳是惟一的 2.以数 ...

  2. shutil复制粘贴和压缩

    shutil复制粘贴和压缩 shutil 高级的文件.文件夹.压缩包处理模块 @1).将文件内容拷贝到另一个文件中 import shutil shutil.copyfileobj(open(&quo ...

  3. html新增一些常用标签

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  4. Cordova phonegap开发环境搭建

    1.下载并安装Android Studio, 2.下载并安装nodejs 3.通过nodejs来安装cordova(npm install -g cordova ) 4.使用cordova来创建pho ...

  5. Pycharm 快捷键

    Ctrl + Alt + Space   快速导入任意类 Alt + enter键    快速导入模块.创建类 Ctrl + /  注释/取消行注释 Ctrl + Shift + /         ...

  6. maven install 构建报错

    错误:Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin: 2.3 . 2 :compile ( default ...

  7. Spring Schedule 任务调度实现

    我们都知道任务调度可以用Quartz,但对于简单的定时任务,可以直接用Spring内置的Schedule来实现.可以由两种方式,注释+XML配置 注解方式: 注解也要先在sping.xml配置文件中配 ...

  8. appCan uexLocation 定位功能

    js的引用: <script src="../js/zy_control.js"></script> <script src="../js/ ...

  9. Apache与Nginx对客户端请求的处理机制对比

    Apache与Nginx对客户端请求的处理机制对比 模块 大致为四个模块,核心模块.HTTP模块.邮件模块,以及第三方模块 核心模块主要包含两类功能的支持,一类是主体功能,包括进程管理,权限管理,错误 ...

  10. Swift - 界面的跳转模式

    iOS开发中界面跳转有两种方式,上下跳转和左右跳转. 上下跳转_TO: let secondViewController = SecondViewController() self.presentVi ...