检测移动设备和平板电脑设备

2024-01-28

我目前正在研究一些用于 PHP 检测手机的代码,这可能非常简单。

现在我遇到了一个问题 - 我希望能够在我的 MVC 框架中为平板电脑、手机和网页制作独特的视图文件。所以我需要将平板电脑与其他移动设备分开。

目前这是我正在使用的代码:

public function isMobile()
{   
    if(preg_match('/(alcatel|amoi|android|avantgo|blackberry|benq|cell|cricket|docomo|elaine|htc|iemobile|iphone|ipad|ipaq|ipod|j2me|java|midp|mini|mmp|mobi|motorola|nec-|nokia|palm|panasonic|philips|phone|sagem|sharp|sie-|smartphone|sony|symbian|t-mobile|telus|up\.browser|up\.link|vodafone|wap|webos|wireless|xda|xoom|zte)/i', $_SERVER['HTTP_USER_AGENT']))
    return true;
else
    return false;
}

但这还不够 - 唯一的检查是该设备是否是移动设备 - 如果不是,它会作为标准告诉框架,我们在计算机上。最后一部分是好的 - 但我想将移动设备分为实际手机 - 以及第二组,这应该是平板电脑。

我希望我已经明确表达了我的愿望,并且希望您能够以一种好的方式实现这一目标。

提前致谢。


这是一个包含单独检测每个平台的方法的类。

  • https://github.com/serbanghita/mobile-detect https://github.com/serbanghita/mobile-detect
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

检测移动设备和平板电脑设备 的相关文章

  • Laravel 中只向登录用户显示按钮

    如果我以 John 身份登录 如何才能只显示 John 的红色按钮而不显示 Susan 的红色按钮 测试系统环境 Win10 Laravel5 4 Mysql5 7 19 table class table table responsive
  • 一次播种多行 laravel 5

    我目前正在尝试为我的用户表播种 如果我像这样尝试 2 行 就会失败 如果我只使用单个数组而不是 users 数组内的 2 个数组来创建一些假数据 那么效果很好 我做错了什么 正确的方法是什么 class UserTableSeeder ex
  • 如何在 Laravel 中使用 PUT http 动词提交表单

    我知道这个问题可能已经提出 但我就是无法让它发挥作用 如果有人可以帮助我 我将非常感激 我安装了 colletive form 但答案也可以是 html 表单标签 现在列出我的表格 我的路线和我的例外情况 Form model array
  • Magento - 自定义支付模块

    这是一个非常普遍的问题 但这里是 我正在尝试在 Magento 中创建一个自定义支付模块 我创建了一个 常规 模块 可以连接到 Magento 事件 观察者模型 但是我如何告诉 Magento 将模块视为支付模块 以便它显示在管理后端和结账
  • 简单的 PHP 表单:电子邮件附件(代码 Golf)

    想象一下 一个用户想要在其网站上放置一个表单 该表单将允许网站访问者上传一个文件和一条简单的消息 该消息将立即通过电子邮件发送 即 该文件未存储在服务器上 或者如果该文件存储在服务器上 仅暂时 作为文件附件 并在邮件正文中添加注释 查看更多
  • 对具有混合类型值的数组进行数字排序

    我有一个像这样的混合数组 fruits array lemon Lemon 20 banana apple 121 40 50 然后申请sort 其功能如下 sort fruits SORT NUMERIC foreach fruits a
  • 根据用户角色将帖子状态更改为待处理

    我有会员网站 用户必须付费才能订阅 当用户订阅时 他的角色变为 成员 现在可以发布到名为 用户配置文件 的自定义帖子类型 我想要做的是将所有已发布帖子的状态更改为该帖子类型中的待处理 例如 如果用户角色更改为 已过期 我尝试了这个 但似乎没
  • octobercms 任务调度不起作用

    我正在使用基于 Laravel 的 OctoberCMS 我没有 SSH 访问我的服务器的权限 每天我需要删除一些注册后 24 小时内未激活帐户的用户 所以我正在考虑使用任务调度 如 cronjobs 根据 10 月 CMSdocs htt
  • 从前端更改记录顺序

    我在编写下一个功能时遇到问题 我希望用户能够重新排列记录并更改 display order 值 我使用 Jquery UI 的可拖放功能来促进这一点 我可以看到如何简单地交换 display order 值 但我想为一条记录设置一个显示顺序
  • PHP CSV VLookup

    我正在寻找一个 PHP 函数 它可以读取 CSV 文件并在第 1 列上执行 vlookup 以回显第 2 列中同一行的相关值 例如 如果 CSV 包含 Name Email John j email protected cdn cgi l
  • 在 PHP 应用程序中实现插件的设计模式

    对于如何在 PHP 应用程序中实现插件有共识吗 我已经调查过观察者模式 http devzone zend com 1732 implementing the observer pattern with splobserver and sp
  • PHP 计算字符串出现次数的最快方法是什么? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 字符串 S 的前缀是 S 的任何前导连续部分 例如 c 和 cod 是字符串 codility 的前缀 为简单起见 我们要求前缀非空 字符串 S
  • 将 Javascript 变量转换为 PHP 变量

    我想使用由 videoel getCurrentTime 函数返回给我的 javascript 变量 并将其转换为 php 变量 以便我能够将其添加到我的 SQL 插入查询中 例如 INSERT INTO tblData VALUES ph
  • “yum install php”需要 httpd-mmn = 20051115

    我从源代码安装了 httpd apache 2 4 6 现在我想安装 PHP 但yum install php吐出错误 Error Package php 5 3 3 40 el6 6 x86 64 updates Requires htt
  • 在 PHP 中将对象作为参数传递[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • CodeIgniter PHP 模型访问“无法找到您指定的模型”

    我一直在尝试为我正在构建的这个网站加载一些模型 但不知道什么原因 会带来如下错误 An Error Was Encountered Unable to locate the model you have specified logon mo
  • 如何在 Kohana 中包装 PHP 遗留代码?

    我有大量用 PHP 编写的遗留代码 这些代码不是在任何特定框架上编写的 而是主要是老式风格 即内联 PHP 然而 我的大部分新代码都是在 Kohana 3 1 X 框架上编写的 尽管 Kohana 确实允许遗留代码和 Kohana 文件在同
  • 提交前验证表单(比检查空字段更复杂)

    我有一个包含时间输入的表单 具体来说 开放时间和结束时间 当按下提交按钮时 它会转到一个 php 页面 其中这些输入将添加到数据库中 在允许提交表单之前我想检查一些事情 例如 我想确保开始时间早于 小于 结束时间 这是表格 Opens
  • 带结束标记和不带结束标记的 XML(自结束标记)

    如何区别
  • MySQL 的 TEXT 类型的 Oracle 等效项

    Oracle 是否有与 MySQL 等效的列类型TEXT type 如果不是 那么通常如何存储较大的文本块 BLOB varchar 32767 如果重要的话 它是通过 PHP 访问 Oracle 10 历史背景是非常受欢迎的 Oracle

随机推荐

  • 将 R 绘图导入 LaTeX?

    我是 R 和 LaTeX 的新手 最近刚刚发现如何使用 R 绘制标准时间序列图并将其保存为 png 图像 我担心的是 将其保存为图像然后将其嵌入到 LaTeX 中会缩放它并使其看起来很难看 有没有办法制作Rplot 函数输出矢量图形并将其嵌
  • 获取特定类的每个 UL 元素的 ID

    Goal 从名为 SBUpdater 的 ul 类获取特定 HTML 元素 ul 的 id 值 Purpose 我的程序包含多个服务器 url 并从每个服务器 url 解析我需要的特定信息 ul 的每个 id 都包含服务器 url 的值 我
  • 如何从mongodb检索图像文件到html页面

    我已成功以二进制格式将图像文件存储在 mongodb 中 但是当我从 mongodb 获取图像时 我得到相同的二进制格式 但我需要这个图像文件 请有人可以帮忙 这是我使用的代码 def retrieve request db pymongo
  • C# 转换 Base64 -> byte[]

    我有一个Base64 byte 从流传输的数组 我需要将其转换为普通数组byte 这个怎么做 你必须使用Convert FromBase64String http msdn microsoft com en us library syste
  • 在 XCode 5 中查看类/协议层次结构

    我是从 Java 世界来到 iOS 的 Java 中最有用的功能之一就是 JavaDoc 可以轻松查看特定接口的所有实现者或特定类的后代 XCode 5中有类似的东西吗 是的 有符号导航器 但它显示所有类 协议的层次结构或仅显示特定于项目的
  • 具有基于类型的数据模板选择和绑定的内容呈现器

    我有一个绑定到项目列表的 ItemsControl 这些项目具有名称和值属性 value 属性的类型为 Object 以允许使用不同的数据类型 为了正确显示 value 属性 我将 ContentPresenter 与我可能使用的每种数据类
  • SAXParseException XML-20221 文本中的无效字符

    对于独立的 Java 应用程序 我们看到非常罕见的错误 其中包含有效 XML 内容的字符串导致 JAXB 抛出异常 例如 javax xml bind UnmarshalException with linked exception org
  • 如何刷新打印功能的输出?

    我如何强制Pythonprint函数将缓冲输出刷新到屏幕 See also Disable output buffering https stackoverflow com questions 107705 if the goal is t
  • 如何从 Flex - AIR 执行 ping 操作?

    我很无聊 因为我的开发服务器宕机了 我正在运行命令提示符来无限期地 ping 服务器 这样我就能看到它们何时停止超时 并知道我可以再次工作 与此同时 我想制作一个 Air 应用程序来为我做这件事 这样我就可以让它发出鸣叫声或警报 或者在它开
  • 视图应该依赖于它的控制器吗? (ASP.NET MVC)

    这里有一个关于 ASP NET MVC 的设计 使用的问题 在html帮助器类中 您可以通过Html ViewContext Controller获取当前控制器 此外 您可以从 html 帮助器类获取请求 路由集合等 这不违背MVC的规则吗
  • 使用 R 进行荷兰语情感分析

    在 RStudio 中 我有一列包含Dutch我想通过情感分析添加 1 0 和 1 0 之间的极性分数的句子 我已经尝试过使用pattern nlp来自 jwfijffels 的软件包 但这对我不起作用 我找到了一个关于https gith
  • 如何使用 JQuery 使文本框在更改时启用和禁用

    我有一段 html 代码和脚本代码 我需要解决方案来处理一个文本框的更改事件 该事件禁用在另一个文本字段中输入数据的行为 任何人都可以帮我解决一下吗 div class leaf div
  • 如何连接到本地 cassandra 数据库

    我有一个本地运行的 cassandra 数据库 我可以在 Ops Center 中看到它正在运行 但是 当我打开开发中心并尝试连接时 我收到一个神秘的 无法连接 错误 如何获取通过开发中心连接到此本地 cassandra 数据库所需的确切名
  • Vagrant 和 Ansible 的“跳过:没有匹配的主机”问题

    我已经安装了 Vagrant VirtualBox 和 Ansible 并尝试在一台主机上运行配置 但它总是返回 正在跳过 没有匹配的主机 我的剧本文件的头部如下所示 hosts webservers user vagrant sudo y
  • 加速度计/陀螺仪数据的核心运动和频率的推送方法

    当使用推送方法获取加速度计 陀螺仪 设备运动数据时 不幸的是陀螺仪和设备运动最大频率平均不能超过72Hz 实际上数据也根本不是周期性的 更糟糕的是 如果只记录陀螺仪数据 不启动设备运动更新服务 即仅使用 motionManager star
  • 实体框架6和空间数据

    我有具有空间数据类型的数据库 我使用数据库优先模型和实体框架 6 0 2 和 NET 4 5 当我尝试使用生成的类时 出现以下错误 指定的架构无效 错误 未加载关系 Name FK1 因为类型 Model TypeB 不可用 以下信息可能有
  • 如果 Session 不是 Active Record 模型,如何处理 :session 错误?

    没有会话模型 除了显示一般失败通知之外 如何创建有关表单提交失败原因的特定错误 回想一下第 7 3 3 节 我们使用用户模型错误消息显示注册错误 这些错误与特定的 Active Record 对象相关 但此策略在这里不起作用 因为会话不是
  • 调整标签大小以适应文本数量 - Swift

    嘿 我有一个标签 我需要根据文本量使该标签的宽度更小或更大 我只找到了如何调整文本以适合大小 但找到了如何调整大小以适合文本 有任何想法吗 你会想要这样做 myLabel sizeToFit 正如这里所见 https developer a
  • FontMetrics 设置字体?

    我正在制作一个程序 需要在 FontMetrics 对象内设置 Font 我之前已经创建了 fontmetrics 但现在我无法再访问 Graphics 对象 然而 我想更改 FontMetrics 内的字体 即创建一个新的 FontMet
  • 检测移动设备和平板电脑设备

    我目前正在研究一些用于 PHP 检测手机的代码 这可能非常简单 现在我遇到了一个问题 我希望能够在我的 MVC 框架中为平板电脑 手机和网页制作独特的视图文件 所以我需要将平板电脑与其他移动设备分开 目前这是我正在使用的代码 public