- 2008-09-24 (水) 14:42
- SariSari
-










何気によく利用するUSER-AGENT情報ですが、
最新のブラウザーまで随時対応していくのは結構大変なものです。
各言語それぞれ便利なライブラリや関数が存在していますが、
PHPでも「get_browser」という関数が存在します。
デフォルトでは利用できない為、利用する場合「php.ini」の変更と
解析に利用するブラウザ情報ファイル(browscap.ini)の取得が必要となります。
利用方法としては、非常に単純です。
まず、ブラウザ情報ファイル(browscap.ini)を取得します。
取得先は「Gary Keith's Browser Capabilities Project」になります。
こちらのページの「download」をクリックして「php_browscap.ini」を選択しダウンロードします。
※いろいろなバージョンがありますので、注意してください。
ダウンロード後、適当な場所に配置してください。
※なお、以後の説明は「/etc/browscap.ini」に配置されたものとして説明します。
次に、「php.ini」内の「browscap」部分の設定を有効にします。
その際、前述した「browscap.ini」へのパスを記述する必要があるので、それを記述します。
-
[browscap]
-
;browscap = extra/browscap.ini
-
browscap = /etc/browscap.ini
以上で準備作業は完了です。
実際の動作を確認するには、以下のように記述します。
<?php
$userinfo=get_browser(null, true);
print_r($userinfo);
?>
実際の出力結果は以下のようになります。
Array (
[browser_name_regex] => ^mozilla/4\.0 (compatible; msie 7\.0; .*windows nt 6\.0.*).*$
[browser_name_pattern] => Mozilla/4.0 (compatible; MSIE 7.0; *Windows NT 6.0*)*
[parent] => IE 7.0
[platform] => WinVista
[browser] => IE
[version] => 7.0
[majorver] => 7
[win32] => 1
[frames] => 1
[iframes] => 1
[tables] => 1
[cookies] => 1
[backgroundsounds] => 1
[cdf] => 1
[vbscript] => 1
[javaapplets] => 1
[javascript] => 1
[activexcontrols] => 1
[cssversion] => 2
[supportscss] => 1
[minorver] => 0
[alpha] =>
[beta] =>
[win16] =>
[win64] =>
[isbanned] =>
[ismobiledevice] =>
[issyndicationreader] =>
[crawler] =>
[aol] =>
[aolversion] => 0
)
取得した情報の内容はおおよそ属性名称からわかるかと思います。
一応、簡単な解説がありますので、以下も参考にしてください。
- http://www.php.net/manual/ja/function.get-browser.php
- http://www.php.net/manual/ja/misc.configuration.php#ini.browscap
ご参考程度にご活用ください。
Comments:0
Trackback+Pingback:0
- TrackBack URL for this entry
- http://blog.technology-knowledge.jp/2008/09/24/328/trackback/
- Listed below are links to weblogs that reference
- 「get_browser」を利用したユーザ情報(USER-AGENT)の解析 from SeeIn開発日誌
