//根据判断结果加载不同blade模板

$isMobile = $this->isMobile();

if ($isMobile) {

return view('home');

} else {

return view('pc');

}

//判断是否是移动端访问

public function isMobile()

{

// 如果有HTTP_X_WAP_PROFILE则一定是移动设备

if (isset ($_SERVER['HTTP_X_WAP_PROFILE'])) {

return TRUE;

}

// 如果via信息含有wap则一定是移动设备,部分服务商会屏蔽该信息

if (isset ($_SERVER['HTTP_VIA'])) {

return stristr($_SERVER['HTTP_VIA'], "wap") ? TRUE : FALSE;// 找不到为flase,否则为TRUE

}

// 判断手机发送的客户端标志,兼容性有待提高

if (isset ($_SERVER['HTTP_USER_AGENT'])) {

$clientkeywords = array(

'mobile',

'nokia',

'sony',

'ericsson',

'mot',

'samsung',

'htc',

'sgh',

'lg',

'sharp',

'sie-',

'philips',

'panasonic',

'alcatel',

'lenovo',

'iphone',

'ipod',

'blackberry',

'meizu',

'android',

'netfront',

'symbian',

'ucweb',

'windowsce',

'palm',

'operamini',

'operamobi',

'openwave',

'nexusone',

'cldc',

'midp',

'wap'

);

// 从HTTP_USER_AGENT中查找手机浏览器的关键字

if (preg_match("/(" . implode('|', $clientkeywords) . ")/i", strtolower($_SERVER['HTTP_USER_AGENT']))) {

return TRUE;

}

}

if (isset ($_SERVER['HTTP_ACCEPT'])) { // 协议法,因为有可能不准确,放到最后判断

// 如果只支持wml并且不支持html那一定是移动设备

// 如果支持wml和html但是wml在html之前则是移动设备

if ((strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') !== FALSE) && (strpos($_SERVER['HTTP_ACCEPT'], 'text/html') === FALSE || (strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') < strpos($_SERVER['HTTP_ACCEPT'], 'text/html')))) {

return TRUE;

}

}

return FALSE;

}

php 插件判断手机版,laravel设备检测,区分手机端浏览器和pc端浏览器,隐藏或显示某些代码...相关推荐

  1. html手机端背景显示不全,手机浏览器打开PC端网站,背景显示不全怎么办?

    原标题:手机浏览器打开PC端网站,背景显示不全怎么办? 随着移动互联网的发展,大多数企业在制作网站的时候,为了兼容各种设备,会制作出PC端.移动端二种版,根据不同的设备跳转到不同的网站,从而实现用户体 ...

  2. 服务端判断客户端是移动端浏览器还是PC端浏览器

    在开发过程中,有时候业务要求需要对移动端和PC端分别处理,如果是移动端,那么返回页面A,如果是PC端,那么返回页面B,而判断浏览器是移动端还是PC端,我们一般通过user-agent判断,服务端和前端 ...

  3. CSS 利用@media screen判断识别手机/PC端浏览器

    一.写此篇的初衷: 手机用户常可以更换自己手机系统的字体,那么在浏览网页的时候,网页内容字体也都随之变了,于是我想,能不能让自己的网站的字体在手机浏览器中保持不变(使用一款自定义字体)呢:而在PC端浏 ...

  4. js判断手机端还是电脑PC端(以及注意事项)

    在router.index中声明方法,在导航守卫中调用并跳转 要注意跳转的网址必须加上 http 或https 1: 不加是不会打开外网的连接,会在你服务内找localhost:XX/XX, 2:加上 ...

  5. 判断当前入口是PC端企业微信还是PC端浏览器。或者是APP端企业微信

    function isQyweixin(){//判断当前入口是PC端还是APP端let flag = navigator.userAgent.match(/(phone|pad|pod|iPhone| ...

  6. android 正在运行 三星,更多三星设备现可通过Your Phone在PC端运行Android应用

    原标题:更多三星设备现可通过Your Phone在PC端运行Android应用 本月早些时候微软宣布通过 Your Phone 应用程序,三星 Galaxy Note 20 系列和 Surface D ...

  7. Python UserAgent解析库——user_agents,判断手机等访问设备

    文章目录 简介 安装 初试 判断访问设备 封装 随机生成User-Agent 参考文献 本文代码下载 简介 user_agents 是Python的UserAgent解析库,通过解析浏览器或HTTP的 ...

  8. Android版edge插件,Win10手机版Edge浏览器支持插件?微软官方说法

    微软Edge浏览器将在今年夏末秋初随Windows10正式版一同发布,在发布后,Edge还将在今年年末收获第三方扩展插件支持.开发者可以轻松将他们的火狐或Chrome插件移植至Edge浏览器,这也将增 ...

  9. android edge 插件,Win10手机版Edge浏览器也将支持插件扩展

    IT之家讯 微软在Build2015大会上正式宣布Windows10系统的Mircosoft Edge浏览器,除了最新UI和渲染引擎之外,还将带来插件扩展. 关于Edge和扩展,虽然微软在大会演讲中只 ...

最新文章

  1. @echo off是什么意思_参加CHANEL私享派对是什么体验?Lanvin头一次在中国办大秀??「每周时报」...
  2. 从0到1演示用 Git Rerere 自动解决冲突
  3. MSSQL表分区的创建
  4. 捕获SocketConnection组件连接异常的几个好贴
  5. boost::type_index模块type_index`(和 `type_info`)能够存储确切的类型,无需剥离 const、volatile 和引用
  6. SAST算法的学习笔记
  7. mac osx vi 设置tab 四个空格
  8. android自定义矩形框,Android中ImageCropper矩形、圆形 裁剪框的实现方法
  9. 美国旧金山之行第三天
  10. 计算机桌面黑屏时间,您必须等待至少一分钟,计算机才能将屏幕保护程序设置为使计算机黑屏...
  11. Winrunner经验总结
  12. 油猴(Tampermonkey)插件+脚本+IDM=百度网盘高速下载
  13. 解锁Insyde的BIOS隐藏设置
  14. github windows系统监控_windows快速制作U盘启动工具Rufus
  15. 镜头评价指标及测试方法(一)
  16. 程序员的百宝箱:提升工作效率的七大神器
  17. 【redis源码学习】持久化机制(2):AOF
  18. 每日一录20220816—01
  19. 对于上云的企业来说,做好安全合规究竟有多重要?
  20. docker环境安装jira(Linux系统)

热门文章

  1. python训练营 朋友圈广告如何发_手把手教你如何投放朋友圈广告
  2. 朋友圈广告助手进阶版v30.5.0
  3. XxlJob与Datax-web调度方案源码分析
  4. 涂鸦T2-U开发板快速入门
  5. 如何批量去除EXCEL单元格中的空格字符?
  6. 深度对话:异构系统集成平台如何让企业降本增效
  7. 深入理解用户态和系统态
  8. Excel如何批量将图片按比例扩大?
  9. 无状态应用:Deployment副本应用及水平扩展
  10. JavaWeb12_JQuery_广告的自动显示与隐藏