我正在构建一个laravel应用程序,我想跟踪客户端浏览器的详细信息,例如浏览器名称.
我如何使用Laravel做到这一点?
public function postUser(Request $request)
{
$user = new User();
$user->name = $request->Input(['name']);
$device= $request->header('User-Agent');
dd($device);
$user->save();
return redirect('userSavePage');
}
我已经使用了这个$device = $request-> header(‘User-Agent’);
但是当我dd()输出时,我得到的是这样的:
"Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.102 Safari/537.36"
如何获得实际的浏览器详细信息?
解决方法:
首先将软件包添加到您的作曲家中:
{
"require": {
"hisorange/browser-detect": "2.*" // For laravel 5.* versions
"hisorange/browser-detect": "1.*" // For laravel 4.* versions
}
}
在作曲家更新/安装后,将服务提供商添加到您的app.php中:
'providers' => array(
// ...
'hisorange\BrowserDetect\Provider\BrowserDetectService',
// ...
)
将别名添加到您的app.php中的别名中:
'aliases' => array(
// ...
'BrowserDetect' => 'hisorange\BrowserDetect\Facade\Parser',
)
您必须使用个人配置,只需发布软件包的配置文件,(plugins.php也随此发布)
php artisan vendor:publish
您只需在外观上调用即可获取结果信息.
// You can always get the result object from the facade if you wish to operate with it.
BrowserDetect::detect(); // Will resolve and return with the 'browser.result' container.
// Calls are mirrored to the result object for easier use.
BrowserDetect::browserVersion(); // return '3.6' string.
// Supporting human readable formats.
BrowserDetect::browserName(); // return 'Firefox 3.6' string.
// Or can be objective.
BrowserDetect::browserFamily(); // return 'Firefox' string.
标签:php,laravel,laravel-5
来源: https://codeday.me/bug/20191012/1896708.html