• 0712-2888027 189-8648-0214
    微信公眾號

    孝感風信網絡科技有限公司微信公眾號

    當前位置:主頁 > 技術支持 > PHP > 使用laravel agent輕松識別客戶端信息以及設備信息

    使用laravel agent輕松識別客戶端信息以及設備信息

    時間:2024-03-28來源:風信官網 點擊: 2523次
    有很多時候我們需要在laravel中識別系統是安卓還是ios,有時候我們也需要判斷是什么瀏覽器,以及判斷手機或者電腦訪問網站,安全中我們需要判斷laravel網站是否是機器人訪問。
    安裝
     
    使用composer安裝:
     
    composer require jenssegers/agent
     
    Laravel在config中配置
     
    在config/app.php中添加服務提供者:
     
    Jenssegers\Agent\AgentServiceProvider::class,
     
    同樣在config/app.php中注冊門面到aliases數組:
     
    'Agent' => Jenssegers\Agent\Facades\Agent::class,
     
    基本使用
     
    首先創建一個Agent實例(如果您使用的是Laravel,則使用Facade門面Agent):
     
    use Jenssegers\Agent\Agent;
    $agent = new Agent();
     
    # 或者使用如下方法
    use Agent;
     
    如果您想要在CLI腳本中解析除當前請求以外的用戶代理,則可以使用setUserAgent和setHttpHeaders方法:
     
    $agent->setUserAgent('Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/537.13+ (KHTML, like Gecko) Version/5.1.7 Safari/534.57.2');
    $agent->setHttpHeaders($headers);
     
    所有Mobile Detect原有的方法仍然可以使用,請查看https://github.com/serbanghita/Mobile-Detect/wiki/Code-examples上的一些原始示例
     
    判斷當前客戶端
     
    1、判斷操作系統
     
    Agent::is('Windows');
    Agent::is('Firefox');
    Agent::is('iPhone');
    Agent::is('OS X');
     
    2、與上面的is一樣
     
    與is()一樣,判斷操作系統:
     
    Agent::isAndroidOS();
    Agent::isNexus();
    Agent::isSafari();
     
    3、移動檢測
     
    檢測移動設備:
     
    Agent::isMobile();
    Agent::isTablet();
     
    4、匹配user agent
     
    用正則表達式搜索用戶代理:
     
    Agent::match('regexp');
     
    附加功能
     
    1、獲取語言
     
    獲取瀏覽器語言。例:
     
    $languages = Agent::languages();
    // ['nl-nl', 'nl', 'en-us', 'en']
     
    2、設備名稱
     
    獲取設備名稱,比如手機。(iPhone, Nexus, AsusTablet, ...)
     
    $device = Agent::device();
     
    3、操作系統名稱
     
    獲取操作系統。(Ubuntu,Windows,OS X,...)
     
    $platform = Agent::platform();
     
    4、瀏覽器名稱
     
    獲取瀏覽器名稱。(Chrome,IE,Safari,Firefox,...)
     
    $browser = Agent::browser();
     
    5、桌面檢測
     
    檢查用戶是否使用桌面設備。
     
    $agent = Agent::isDesktop();
     
    這將檢查用戶是否不是移動設備,平板電腦或機器人。
     
    6、電話檢測
     
    檢查用戶是否為電話設備。
     
    Agent::isPhone();
     
    7、機器人檢測
     
    檢查用戶是否是機器人。這使用jaybizzle / crawler-detect來執行機器人檢測。
     
    Agent::isRobot();
     
    8、機器人名稱
     
    獲取機器人名稱。
     
    Agent::robot();
     
    9、獲取瀏覽器/系統版本
     
    MobileDetect最近添加了一個version可以獲取瀏覽器/系統版本。要獲取瀏覽器或平臺版本,您可以使用:
     
    $browser = $agent->browser();
    $version = $agent->version($browser);
     
    $platform = $agent->platform();
    $version = $agent->version($platform);
     
    請注意,版本方法仍處于測試階段,所以它可能不會返回正確的結果。
    欄目列表
    推薦內容
    熱點內容
    展開
    动漫h精品无码一区二区三区,欧美日韩精品一区二区,午夜麻豆国产精品,加勒比中文字幕无码,亚洲日本va中文字幕区