您现在的位置是:网站首页 > 心得笔记
安装laravel扩展包-----Laravel User Agent 轻松识别客户端信息
简介laravel-agent 是一个为 Laravel 定制的客户端识别扩展包, 基于 Mobile Detect , 提供了非常优雅的接口.
安装
1.cmd切换到laravel项目目录下,命令行模式运行
composer require jenssegers/agent
安装完成后,会在vendor看到有jenssegers文件夹
2.修改 app/config/app.php 添加 ServiceProvider
Jenssegers\Agent\AgentServiceProvider::class,
3.修改 app/config/app.php 添加 alias
'Agent' => Jenssegers\Agent\Facades\Agent::class,
基础用法
调用Jenssegers类 // 操作系统 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);
实例
后台登录日志,用来记录登录后台人员情况。我数据表log_action_login中有字段:login_ip(登录IP)、platform_version(系统版本)、browser_version(浏览器版本)、browser(浏览器信息 Chrome, IE, Safari, Firefox, …)、platform( 系统信息 Ubuntu, Windows, OS X, …)、location(登录IP对应的地理位置信息)等等
/** * @功能:登录日志写入 * @author Sheng Yue * @time 2018/11/8 */ public static function logLogin ($userId=0) { $login_ip = self::getIPaddress();//登录IP $location = serialize(GeoIP::getLocation($login_ip)); $platform = Agent::platform();// 系统信息 (Ubuntu, Windows, OS X, ...) $platform_version = Agent::version($platform);// 获取系统版本 $browser = Agent::browser();// 浏览器信息 (Chrome, IE, Safari, Firefox, ...) $browser_version = Agent::version($browser);// 获取浏览器版本 $data = [ 'login_ip' => $login_ip, 'location' => $location, 'platform' => $platform, 'platform_version' => $platform_version, 'browser' => $browser, 'browser_version' => $browser_version, 'login_time' => date('Y-m-d H:i:s') ]; DB::table('log_action_login')->insert($data); }
上一篇:laravel框架中发送邮件