私は、ブラウザがJavascriptをサポートしていないことを人々に警告するために、get_browser()
関数を使用しています。実際、私はそれを使って、私が構築しているWebアプリケーションの特定の部分を使用できることを伝えています。 Javascriptを使用するのが怖い開発者の話を聞くのにうんざりしているため、Javascriptを適切に使用することに決めました。余談ですが、ここにエラーがあります。
browscap iniディレクティブが設定されていません
これは、php.iniに設定する必要があることを意味すると思います。誰かが私にこの方向性を教えてもらえますか?
私はこれがブラウザがあなたのウェブサイトに必要なものをサポートしていることを検出するための「最良の」ソリューションだとは思わない
User-Agent
として送信できます。2番目のポイントでは、ブラウザーが必要なものを実際にサポートしているかどうかをテストし、browscapリストなどのリストに依存しないようにする必要があります。
それでも、 browscap
についての質問に答えるために: get_browser
(quoting):
注:これが機能するためには、php.iniの
browscap
構成設定システム上のbrowscap.ini
ファイルの正しい場所を指す必要があります。browscap.ini
はPHPにバンドルされていませんが、ここで最新の "php_browscap.ini
ファイルを見つけることができます。browscap.ini
には多くのブラウザに関する情報が含まれていますが、データベースを最新の状態に保つためにユーザーの更新に依存しています。ファイルの形式はかなり自明です。
だから、あなたはする必要があります:
php.ini
ファイルにbrowscap
ディレクティブを設定して、ダウンロードしたファイルを指すようにします。このトピックは古いことは知っていますが、次のようなものを使用できます。
<noscript>JavaScript must be enabled</noscript>
javaScriptが有効になっていない場合に表示します。
ブラウザクラスを使用してブラウザを確認できます Github からダウンロードします
構成
include(/your-path/Browser.php);
$browser = new Browser();
if( $browser->getBrowser() == Browser::BROWSER_IE && $browser->getVersion() >= 8 )
{
echo "Your browser is Internet Explorer version 8";
}
PHPにはバグがあります。これは、実際の問題がWebサーバーがbrowscapファイルを読み取れないという場合にもこのエラーを引き起こす可能性があります(たとえば、www- data)。 https://bugs.php.net/bug.php?id=74501 を参照