2

私はphpのget_browser()関数を使用して、主にデバッグのために、ユーザーの簡単な分析を行ってきました。しかし、get_browser を強化するデータである browsercap.ini のメンテナーがプロジェクトを終了したようです。一部の人々は再起動に取り組んでいるようですが、データは非常に古くなりつつあります。彼らは完全な書き直しについて話しているので、それが再び始まるまでにはかなりの時間がかかるのではないかと心配しています.

browsercap.ini に依存しない代替手段を知っている人はいますか?

編集:私の質問があいまいで申し訳ありません。これは、分析ではなくデバッグに必要です。クロスブラウザーのバグが多い Web アプリケーションの「バグ報告」ツールで使用していますが、クライアント マシンを制御できません。これは非常に古いアプリケーション (元々は IE6 用に作成されたもの) であり、最新の状態にするために最善を尽くしていますが、クロスブラウザーの問題を見つけるのが非常に難しい場合があります。

ありがとうございました

4

5 に答える 5

6

これが私のやり方です。最も一般的なブラウザを含めました。

<?php

function get_browsername() {
if (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== FALSE){
$browser = 'Microsoft Internet Explorer';
}elseif (strpos($_SERVER['HTTP_USER_AGENT'], 'Chrome') !== FALSE) {
$browser = 'Google Chrome';
}elseif (strpos($_SERVER['HTTP_USER_AGENT'], 'Firefox') !== FALSE) {
$browser = 'Mozilla Firefox';
}elseif (strpos($_SERVER['HTTP_USER_AGENT'], 'Opera') !== FALSE) {
$browser = 'Opera';
}elseif (strpos($_SERVER['HTTP_USER_AGENT'], 'Safari') !== FALSE) {
$browser = 'Apple Safari';
}else {
$browser = 'error'; //<-- Browser not found.
}
return $browser;
}

echo 'Browser is '. get_browsername(); //<-- Display the browser name

if(get_browsername() == 'Google Chrome') { 
// Use the function to check
}

お役に立てれば。

于 2013-05-13T12:55:15.820 に答える
0

https://github.com/ornicar/php-user-agentは、訪問者のブラウザーに関する情報を取得したいだけの場合、合理的に最新 (最終更新は 5 か月前) の代替手段を提供します。

私はそれを使用して、IEを仕事のイントラネットから締め出しました(できます)。

于 2012-11-26T16:17:19.793 に答える
0

Google アナリティクスのオープン ソースの代替手段であるPiwikを調べてみました。彼らは依存してい$_SERVER['HTTP_USER_AGENT'];ます (ここに文書化されています) が、これは (ここget_browserに文書化されています)に直接接続されています。また、ブラウザーはユーザー エージェントについて嘘をつく可能性があることを覚えておいてください。探しているものを正確に説明する必要があります。

于 2012-11-26T16:07:26.953 に答える