3

IE 6 および 7 で機能しない PHP ページがあるため、ユーザーに IE を使用させたくないのです。警告や通知は確実に無視されます。解決策として、リクエストが IE から来た場合にページのレンダリングを停止し、IE がサポートされていないという行を表示することはできますか?

私はphpが初めてなので、質問です。IEは吸う!

4

5 に答える 5

2

$_SERVER['HTTP_USER_AGENT'] を使用して、HTTP ユーザー エージェント リクエスト パラメータにアクセスできます。

$usingIE6 = (strpos( $_SERVER['HTTP_USER_AGENT'], 'MSIE 6.' ) !== FALSE);

if ($usingIE6) {
  echo 'Please upgrade your browser'; 
  exit;
}

使用統計はこちらです。IE 6 の市場シェアは 7% です: http://marketshare.hitslink.com/browser-market-share.aspx?qprid=2&qpcustomd=0

于 2012-04-06T14:43:47.250 に答える
2

ユーザー エージェント チェックを使用します。

if(stristr($_SERVER['HTTP_USER_AGENT'], 'MSIE 6.0')) {
    echo 'IE6'
};

if(stristr($_SERVER['HTTP_USER_AGENT'], 'MSIE 7.0')) {
    echo 'IE7';
};
于 2012-04-06T14:38:18.857 に答える
1

はい、できます:

if (isset($_SERVER['HTTP_USER_AGENT']) && 
   (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== false))

これは単なるスニペットであり、IE が最適なブラウザーではないことはわかっていますが、優れたプログラマーはすべてのブラウザーを調べて、すべてのブラウザーを正しくする必要があります。これが Web 開発の実際の難しさです。

于 2012-04-06T14:40:26.367 に答える
1

スーパーグローバル $_SERVER から HTTP_USER_AGENT でテストを行うことができます。

しかし、別のオプションを提供するために(それは必要なものではないかもしれません。より多くの情報を取得し、追加のファイルが必要になるためです)、browscapに依存するget_browserを使用できます。ビジター

于 2012-04-06T14:41:44.730 に答える
0

PHP には、必要なすべてのバージョン情報を返すget_browserという関数があります。

IE が解読できる条件付きコメントを使用することもできます。

<!--[if lt IE 8]>Your browser is too old for this app. Please upgrade.<![endif]-->
于 2012-04-06T14:56:52.977 に答える