ユーザーのブラウザの機能を取得する

# get_browser

(PHP 4, PHP 5, PHP 7, PHP 8)

get_browser — ユーザーのブラウザの機能を取得する

### 説明

function get_browser(?string `$user_agent` = `null`, bool `$return_array` = `false`): object|array|false

ユーザーのブラウザの機能を調べます。これは、browscap.ini ファイルのブラウザ情報を調べることにより行います。

### パラメータ

`user_agent`

  処理するユーザーエージェント。デフォルトでは、HTTP の User-Agent ヘッダの内容を使用します。しかし、このパラメータを渡すことでこれを変更する (別のブラウザの情報を取得する) ことが可能です。

  このパラメータを処理しないようにするには `null` 値を渡します。

`return_array`

  `true` を指定すると、この関数はオブジェクトでなく配列を返します。

### 戻り値

情報は、オブジェクトあるいは配列形式で返されます。 たとえばブラウザのメジャーバージョン番号、マイナーバージョン番号や ID 文字列といったさまざまなデータが含まれています。また、 フレームや JavaScript、クッキーといった機能についての `true`/`false` 値も含んでいます。

`cookies` の値は、単にそのブラウザがクッキーを扱う機能を 有していることを示すだけであり、ユーザーがクッキーを受け入れる設定に しているかどうかを表すものではありません。それをチェックする唯一の方法は、 いったん setcookie() でクッキーを設定してからリロードし、 その値を調べることです。

情報が取得できなかった場合は、`false` を返します。 たとえば、php.ini の browscap が設定されていなかった場合などです。

### 例

例1 ユーザーのブラウザについての全情報の一覧

    <?php
    echo $_SERVER['HTTP_USER_AGENT'] . "\n\n";

    $browser = get_browser(null, true);
    print_r($browser);
    ?>

上の例の出力は、 たとえば以下のようになります。

    Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7) Gecko/20040803 Firefox/0.9.3

    Array
    (
        [browser_name_regex] => ^mozilla/5\.0 (windows; .; windows nt 5\.1; .*rv:.*) gecko/.* firefox/0\.9.*$
        [browser_name_pattern] => Mozilla/5.0 (Windows; ?; Windows NT 5.1; *rv:*) Gecko/* Firefox/0.9*
        [parent] => Firefox 0.9
        [platform] => WinXP
        [browser] => Firefox
        [version] => 0.9
        [majorver] => 0
        [minorver] => 9
        [cssversion] => 2
        [frames] => 1
        [iframes] => 1
        [tables] => 1
        [cookies] => 1
        [backgroundsounds] =>
        [vbscript] =>
        [javascript] => 1
        [javaapplets] => 1
        [activexcontrols] =>
        [cdf] =>
        [aol] =>
        [beta] => 1
        [win16] =>
        [crawler] =>
        [stripper] =>
        [wap] =>
        [netclr] =>
    )

### 注意

> 注意:

> この関数が正常に機能するためには、php.ini の browscap 設定が、システム上の browscap.ini の正確な位置を 指している必要があります。

> browscap.ini は PHP にはバンドルされていません。 しかし、ここで最新の » php_browscap.ini を入手することができます。

> browscap.ini は多くのブラウザに関する情報をもっていますが、 データベースを最新に保つのはユーザーによる更新に依存しています。 ファイルのフォーマット自体を見ればおおよそのことがわかります。

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open