問題 × 解決策

PHPでブラウザがIEまたはEdgeの時だけ処理を分ける方法

  • 2020年07月10日
  • PHP

問題

PHPでブラウザがIEまたはEdgeの時だけ処理を分けるには?

解決策

  • 「$_SERVER['HTTP_USER_AGENT'])」でユーザーエージェントを取得します。
  • 「strstr」でユーザーエージェントの文字列を検索して、EDGEなら「Edge」または「Edg」、IEなら「Trident」または「MSIE」がヒットするので、それを元にIF構文で処理を振り分けます。

 

PHPでブラウザ「IE」と「Edge」に対して対応できるようにする。

IEのバージョンが上がった現在でも、IE特有のエラー・現象に遭遇します。
そしてEdgeも特有のエラー・現象に出くわします。
そのためにPHPでブラウザがIEまたはEdgeの時だけ処理を分ける方法をご紹介します。

ユーザーエージェントを取得します。

$_SERVER[‘HTTP_USER_AGENT’]」でユーザーエージェントを取得します。

$browser = $_SERVER['HTTP_USER_AGENT'];

「strstr」でユーザーエージェントの文字列を検索して処理を振り分けます。

strstr」でユーザーエージェントの文字列を検索して処理を振り分けます。

if (strstr($browser, 'Edge') || strstr($browser, 'Edg')) {
	// EDGEの場合の処理
}elseif(strstr($browser, 'Trident') || strstr($browser, 'MSIE')) {
	// IEの場合の処理
}else{
	// それ以外のブラウザの場合の処理
};

ブラウザの判定文字列

判定文字列 ブラウザ
Edge または Edg Microsoft Edge
Trident または MSIE Microsoft Internet Explorer
OPR または Opera Opera
Chrome Google Chrome
Firefox Firefox
Safari Safari

参考ページ

以下のサイトが、より詳しく解説してくれています。

【PHPでユーザーが利用しているWebブラウザを判断して処理を変える | Free Style】
https://blanche-toile.com/web/php-useragent-browser

【アクセスされたブラウザ名をPHPで判別する方法 – Qiita】
https://qiita.com/sunnyG/items/9b72fb18b2ef99d33bfa

コメント

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

sixteen − ten =

「問題 × 解決策」
月別アーカイブ一覧

「問題 × 解決策」
月別アーカイブ一覧