[精讚] [會員登入]
1930

[PHP] 使用browscap檢查瀏覽器版本

使用PHP內建函數browscap檢查瀏覽器版本

分享此文連結 //n.sfs.tw/11024

分享連結 [PHP] 使用browscap檢查瀏覽器版本@新精讚
(文章歡迎轉載,務必尊重版權註明連結來源)
2019-10-25 10:47:00 最後編修
2017-05-01 10:50:16 By 張○○
 

自動目錄

PHP 手冊中有檢查瀏覽器版本的函數 get_browser()

但這個函數沒經過設定是無法使用的

echo $_SERVER['HTTP_USER_AGENT'];
echo "<br/>"; 
// 第一個參數可以指定user agent,第二個參數設為true回傳陣列,否則回傳物件
$browser = get_browser(null, true);
print_r($browser);

執行

Mozilla/5.0 (Windows NT 6.1; WOW64; rv:53.0) Gecko/20100101 Firefox/53.0
Warning: get_browser(): browscap ini directive not set in xxx.php

設定

一、下載 browscap.ini

http://browscap.org/

可選下載PHP browscap.ini的版本有輕量版、完整版或一般版本 ,此檔必須手動更新,以免新版本的瀏覽器無法辨識。

# cd /etc/php.d/
# wget http://browscap.org/stream?q=PHP_BrowsCapINI -O browscap.ini

二、修改 php.ini ,我使用絕對路徑,以免出現錯誤

尋找[browscap]這個tab,加入一行

[browscap]
browscap = /etc/php.d/browscap.ini

重新啟動 APACHE

三、重新執行

我下載完整版本後執行的結果

Mozilla/5.0 (Windows NT 6.1; WOW64; rv:53.0) Gecko/20100101 Firefox/53.0 0
Array ( [browser_name_regex] => ~^mozilla/5\.0 \(.*windows nt 6\.1.*wow64.*\) gecko.* firefox/53\.0.*$~ [browser_name_pattern] => Mozilla/5.0 (*Windows NT 6.1*WOW64*) Gecko* Firefox/53.0* [parent] => Firefox 53.0 [browser_bits] => 32 [platform] => Win7 [platform_version] => 6.1 [platform_description] => Windows 7 [platform_bits] => 64 [platform_maker] => Microsoft Corporation [win64] => 1 [device_name] => Windows Desktop [device_code_name] => Windows Desktop [comment] => Firefox 53.0 [browser] => Firefox [browser_type] => Browser [browser_maker] => Mozilla Foundation [version] => 53.0 [majorver] => 53 [frames] => 1 [iframes] => 1 [tables] => 1 [cookies] => 1 [javascript] => 1 [javaapplets] => 1 [cssversion] => 3 [device_type] => Desktop [device_pointing_method] => mouse [renderingengine_name] => Gecko [renderingengine_version] => 53.0 [renderingengine_description] => For Firefox, Camino, K-Meleon, SeaMonkey, Netscape, and other Gecko-based browsers. [renderingengine_maker] => Mozilla Foundation [browser_modus] => unknown [minorver] => 0 [alpha] => [beta] => [win16] => [win32] => [backgroundsounds] => [vbscript] => [activexcontrols] => [ismobiledevice] => [istablet] => [issyndicationreader] => [crawler] => [isfake] => [isanonymized] => [ismodified] => [aolversion] => 0 [device_maker] => unknown [device_brand_name] => unknown )

相當的詳細

參考資料

[1] Rewi Blog http://rewgaz.wordpress.com/2012/11/20/howto-install-and-use-browscap-respectively-get_browser-for-php-on-ubuntu-debian/

[2] PHP Warning:  Cannot open 'extra/browscap.ini' for reading in Unknown on line 0

此錯誤發生原因為 php.ini的設定檔指定的 browscap.ini找不到,請將他設為絕對路徑或註解掉";"可解決。

[3] PHP函式手冊 http://php.net/manual/en/function.get-browser.php


原文編修 2013-08-31 01:04:41

END

你可能感興趣的文章

PHP判斷對方瀏覽器語系 多語系的網頁應該主動偵查瀏覽器的語系,配合使用者跳出合適的語系。

[PHP] 字串拆解函數substr 奇異的錯誤(札記) 偶然發現一個 substr函數拆解上的怪異之處

[PHP] 類別中要怎麼使用callback function 召回函數(回呼函數)? 在類別中使用標準函數,若其中的callback 函數也是在類別中,該怎麼使用?

[PHP] 類別的繼承及建構子和解構子 PHP 類別的繼承及建構子和解構子

[PHP] 位元運算 (Bitwise operation)及和PERL比較 PHP 的位元運算,及和PERL比較整理

Smarty安裝 smarty 是著名的樣版引擎,非常的好用,用多了突然發現拿掉smarty反而不會寫php了,以下是安裝過程..

我有話要說

>>

限制:留言最高字數1000字。 限制:未登入訪客,每則留言間隔需超過10分鐘,每日最多5則留言。

訪客留言

[無留言]

隨機好文

如何在linux下執行java 原生的java應用程式可以使用簡單的方法在console下面寫出來,適合作簡單的應用

[Windows7] 移除IE10及移除IE11 Windows7 不得已的情況要移除IE11或IE10怎麼做?

[Win7] 燒錄 iso 檔 在Windows7 中內建燒錄程式,可以直接把檔案拉到光碟機裡,再執行燒錄。

魔球中小女孩唱的歌 The show 魔球中小女孩唱的歌 The show

[AS3] 我做的唯一一個Flash As3遊戲UFO INVADSION [AS3] 我做的唯一一個Flash As3遊戲,是第一個也是最後一個,後來就沒再寫as3,不過as3還滿好玩的。