簡體   English   中英

如何在cakephp 3請求中獲取瀏覽器名稱?

[英]How to get browser name in cakephp 3 request?

我需要在我的網絡應用程序中獲取請求瀏覽器名稱。(用於分析)

在我使用$visitor_user_agent=$_SERVER['HTTP_USER_AGENT']核心php中,當使用$visitor_user_agent=$_SERVER['HTTP_USER_AGENT']時,它返回Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.130 Safari/537.36字符串然后preg_match('/Chrome/i', $visitor_user_agent)可以用來知道它的chrome是否。我不確定這是否是找到瀏覽器名稱的有效方法。

我還找到了get_browser鏈接,但它沒有給出瀏覽器名稱。

在cakephp3或核心php中有沒有辦法獲取瀏覽器名稱?

這將返回用於請求的用戶代理:

$this->request->header('User-Agent');

http://book.cakephp.org/3.0/en/controllers/request-response.html

查看Request對象的文檔

您可以使用env()方法獲取HTTP_USER_AGENT

$this->request->env('HTTP_USER_AGENT');

您還可以准備自定義檢測器:

$this->request->addDetector(
    'chrome',
    ['env' => 'HTTP_USER_AGENT', 'pattern' => '/Chrome/i']
);

然后在控制器中使用is()方法如下:

if($this->request->is('chrome')) {
    // do stuff for chrome
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM