2009/04/14

[php]サーバーサイドでブラウザ判定

今、作っているサイトで、サーバーサイドでブラウザを判定する必要があったので、方法をまとえてみました。

$ua = $_SERVER['HTTP_USER_AGENT'];

via:サーバサイドでOS・ブラウザ判定

そうそう、$_SERVER['HTTP_USER_AGENT']を使えば、ブラウザの情報を取得できるんだった。

ただし、これだけだと余分な情報が入ってしまっているので、さらに工夫をする必要があるかも。

こんな風にしてみました。
// ブラウザ名を取得
$l_browser = $_SERVER["HTTP_USER_AGENT"];
// 小文字に変更
$l_browser = strtolower($l_browser);

//browser判定(firefoxの場合)
if(strpos($l_browser,"firefox") != false ){
・・・処理が続く・・・
}

//browser判定(safariの場合)
if(strpos($l_browser,"safari") != false ){
・・・処理が続く・・・
}

ここでポイントなのが、一回、取得したブラウザ情報を小文字に変更を行ってから検索をかけているところ。

最近、開発環境が、macなので、IEの場合、どう返すのかはっきりわかっていないんだけど。。。

mac版のIEでないかなー。

昔、IE5のmac版はあったのに。。。

0 コメント:

コメントを投稿