知道打开网站的设备是android还是pc

时间:2018-08-24 14:06:45

标签: php laravel function

我有一个网站,并且已经将该网站托管在共享托管中。问题是,它在PC上看起来很棒,但在移动设备上看起来却不太好。我知道我可以通过媒体查询使它看起来不错,但是我想为用户提供全新的体验。当我在PC上打开它时,我已经在Facebook中看到了它,它运行良好,当我在移动设备(手机)中打开它时,它要求我为手机下载它。那么,如何知道我的设备是Android还是iOS或PC?我想在我的网站中做同样的事情。我有一个用Laravel制作的网站,并且我认为:

Route::get('/', 'PagesController@index');

在我的控制器中,我要做的是:

<?php
  if(getDevice($device) === "android"){
      return "mobile_view";
  }else{
    return "pc_view";
  }
?>

那么,php or Laravel中有一个函数可以做到这一点吗?

1 个答案:

答案 0 :(得分:0)

检测OS /浏览器确实很复杂,Laravel没有内置的类/函数来执行此操作。但是,有一个Laravel软件包可以做到这一点。

https://github.com/hisorange/browser-detect

// Determine the user's device type is simple as this:
Browser::isMobile();
Browser::isTablet();
Browser::isDesktop();

if(Browser::isMobile()){
    return "mobile_view";
}else{
    return "pc_view";
}

如果您要从其他用户代理获取浏览器详细信息,则当前用户将调用解析函数。

$result = Browser::parse('Opera/9.80 (Windows NT 6.0) Presto/2.12.388 Version/12.14');