PHPでアクセスされたブラウザ名を判別する方法

PHPスクリプトでアクセスされたブラウザを判別するサンプルコードを以下に記します。


スポンサーリンク

ブラウザを判別するには!?

ブラウザ名を取得するにはヘッダーに含まれるHTTP_USER_AGENTを取得し判別します。 実際に$_SERVER変数の内容を確認してみます。
準備したPHPサンプルスクリプトは以下の通りです。

fileagent1.php (改行コードLF)

<?php
 print($_SERVER['HTTP_USER_AGENT']);
?>

上記の出力を見ると以下のようにブラウザ判別ができることが確認できます。

判別文字列ブラウザ
ChromeGoogle Chrome
FirefoxFirefox
MSIEInternet Explorer

他のブラウザも同様に確認してみれば良いと思います。

ブラウザ判別のサンプルスクリプト

新聞部さんからのサンプルコード提供です。(感謝!!)

以下にブラウザ判別のサンプルスクリプトを記します。
上記では、$_SERVER['HTTP_USER_AGENT']でブラウザのエージェント名を取得していましたが、
以下のサンプルスクリプトでは同様の動作をするgetenv関数を使用してみることにします。
現在非推奨となってるereg関数を使用せず、preg_matchに訂正したサンプルコードを以下に記します。

fileagent2.php (改行コードLF)

<?php
$ua = getenv('HTTP_USER_AGENT');
if (preg_match("/Chrome/", $ua)) {
    print("Google Chrome");
} elseif (preg_match("/Firefox/", $ua)) {
    print("Firefox");
} elseif (preg_match("/MSIE/", $ua)) {
    print("Microsoft Internet Explorer");
} else {
    print("Unknown");
}

以上、PHPスクリプトによるブラウザ判別のサンプルスクリプトでした。
但し、preg_match関数では、正規表現の記述のあたりのこともあるので忘れないようにしましょう。


添付ファイル: fileagent1.php 817件 [詳細] fileagent2.php 890件 [詳細]

トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2025-03-12 (水) 12:15:46