Laravel User Agent 轻松识别客户端信息

laravel-agent 是一个为 Laravel 定制的客户端识别扩展包, 基于 Mobile Detect , 提供了非常优雅的接口.

安装#

使用 composer 安装:

composer require jenssegers/agent

修改 app/config/app.php 添加 ServiceProvider :

Jenssegers\Agent\AgentServiceProvider::class,

修改 app/config/app.php 添加 alias:

'Agent' => Jenssegers\Agent\Facades\Agent::class,

基础用法#

use Jenssegers\Agent\Agent;

$agent = new Agent();
// 操作系统
$agent->is('Windows');
$agent->is('Firefox');
$agent->is('iPhone');
$agent->is('OS X');

// 厂商产品定位
$agent->isAndroidOS();
$agent->isNexus();
$agent->isSafari();

// 设备类型
$agent->isMobile();
$agent->isTablet();
$agent->isDesktop();

// 语言
$languages = $agent->languages();
// ['nl-nl', 'nl', 'en-us', 'en']

// 是否是机器人
$agent->isRobot();

// 获取设备信息 (iPhone, Nexus, AsusTablet, ...)
$agent->device();

// 系统信息  (Ubuntu, Windows, OS X, ...)
$agent->platform();

// 浏览器信息  (Chrome, IE, Safari, Firefox, ...)
$agent->browser();

// 获取浏览器版本
$browser = $agent->browser();
$version = $agent->version($browser);

// 获取系统版本
$platform = $agent->platform();
$version = $agent->version($platform);

一个例子#

下面是一段微信扫一扫下载 App 的链接的逻辑

use Jenssegers\Agent\Agent;
$android_download_link = 'http://7xim5a.com2.z0.glb.qiniucdn.com/app.apk';
$weichat_download_link = 'http://a.app.qq.com/o/simple.jsp?pkgname=com.app.indentifior';
$ios_download_link     = 'https://itunes.apple.com/cn/app/kou-yu-jiao-er/app-id*?l=en&mt=8';
$download_link         = '';
$agent = new Agent();
// 如果是移动端访问的话 (phones or tablets).
if ( $agent->isisMobile() )
{
    if( $agent->isisiOS() )
    {
        $download_link = $ios_download_link;
        // 微信访问
        if (strpos($agent->isgetUserAgent(), 'MicroMessenger') !== false)
        {
            // echo "<h1>微信用户若不能安装, 请点击右上角的跳转按钮, 选择 \"在 Safari 中打开\" 即可正常跳转哦 ^_^ .</h1>";
            // exit;
            $download_link = $weichat_download_link;
        }
    }
    if( $agent->isisAndroidOS() )
    {
        $download_link = $android_download_link;
        // 微信访问
        if (strpos($agent->isgetUserAgent(), 'MicroMessenger') !== false)
        {
            // 使用应用宝可以访问
            $download_link = $weichat_download_link;
        }
    }
}

View

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
    <h1>处理中... </h1>

    <script type="text/javascript">
        window.onload=function(){
          setTimeout("window.location.href='<?php echo $downloadlink; ?>'",1000);
        }
    </script>

</body>
</html>

转载于:https://my.oschina.net/u/3338945/blog/868666

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值