Javascript可以透過navigator物件就輕鬆取得瀏覽器的資訊,但是PHP比較麻煩多了,一般來說雖然可以從$_SERVER['HTTP_USER_AGENT']取得相關的資訊字串如下:
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7) Gecko/20040803 Firefox/0.9.3
但是事實你可能不想要那麼長的資訊,只是想要單純的知道,他是Firefox還是IE或是其它Broswer就好,項多再加個版本。不過要剖析這個字串實在令人頭大,因為不同Broswer的,他所出現的字串資訊都不一樣。後來拜google大仙,才知道PHP原來有一個函式叫get_broswer老早就把我所擔心的事解決了!
//取得瀏覽器資訊 $browser = get_browser(null, true); //組合自己想要的資訊 echo $browser['browser'].($browser['version']); //輸出結果為:Firefox(0.9.3)
$browser陣列事實上還有多個可選用的索引,詳情就直接參考官方的get_broswer便可得知了。
正高興得到這個函式,一件令人失望的事情發生了!從官方資訊得知:
Attempts to determine the capabilities of the user's browser, by looking up the browser's information in the browscap.ini file.
喔,該死!這意味著我必需在browscap.ini有啟動的狀況下才能使用這個函式。第二個該死的是資訊所要求的環境又剛好沒有(被限制開啟這個browscap.ini的狀況)。天啊~怎麼辦= =|||,再度的拜請google大仙了。
呼~果然大仙一出手,便知有沒有,讓我幸運的找到這個函式庫phpSniff,真是太棒了!!使用的方法在網站首頁就清楚的列出來了
//載入phpSniff類別 include_once('phpSniff.class.php'); //建立資訊物件 $clinet = new phpSniff(); //組合自己想要的資訊 echo $clinet->long_name.($clinet->version); //輸出結果為:Firefox(0.9.3)
這個類別的授權是LGPL license,呼= =,好險不是GPL,不然就真是太可惜了
留言列表