ホームページ >php教程 >php手册 >ユーザーのブラウザとオペレーティング システムの情報を取得するための PHP コード

ユーザーのブラウザとオペレーティング システムの情報を取得するための PHP コード

WBOY
WBOYオリジナル
2016-06-13 11:58:20805ブラウズ

1. ユーザーがサーバーにアクセスすると、PHP スーパーグローバル変数 $_SERVER 配列のフィールド ['HTTP_USER_AGENT'] を使用して、アクセスするユーザーのすべての情報を取得します

訪問時の$_SERVER['HTTP_USER_AGENT'] 文字列:

Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/533.2 (Gecko のような KHTML) Chrome/5.0.342.3 Safari/533.2

2. 正規表現を使用して、上記の文字列とユーザーのブラウザのオペレーティング システム情報を照合します

3. PHP は、一致した文字列 (ユーザーのブラウザのオペレーティング システム情報) に基づいて必要な CSS ファイル、JS などを割り当て、ユーザーに返します

私のブラウザのオペレーティング システム情報
ブラウザ: Chrome 5.0

プラットフォーム: Windows 7

コードは次のとおりです:

コードをコピーしますコードは次のとおりです:


//訪問ユーザーのブラウザ情報を表示します
echo 'Browser: ' . detectbrowser($Agent) '
';
//訪問ユーザーのオペレーティング システム プラットフォームを表示します
echo 'Platform : ' . 決定プラットフォーム($ エージェント)。

//$_SERVER['HTTP_USER_AGENT'] の文字列の肯定的な式の比較と分析を行い、アクセスしているユーザーのブラウザに関する情報を取得します
function destroybrowser ($Agent) {
$browseragent=""; //ブラウザ
$browserversion=""; //ブラウザのバージョン
if (ereg('MSIE ([0-9].[0-9]{1,2})',$Agent ,$version)) {
$browserversion=$version[1];
$browseragent="Internet Explorer";
} else if (ereg( 'Opera/([0-9]{1, 2}.[0 -9]{1,2})',$Agent,$version)) {
$browserversion=$version[1];
$browseragent="Opera";
} else if (ereg( 'Firefox/([0-9.]{1,5})',$Agent,$version)) {
$browserversion=$version[1];
$browseragent=" Firefox";
}else if (ereg( 'Chrome/([0-9.]{1,3})',$Agent,$version)) {
$browserversion=$version[1]; ="Chrome";
}
else if (ereg( 'Safari/([0-9.]{1,3})',$Agent,$version)) {
$browseragent= Safari";
$browserversion="";
}
else {
$browserversion="";
$browseragent="Unknown";
}
return $browseragent ." ".$browserversion;
}

//同様に訪問ユーザーのブラウザの情報を取得します

function detectplatform ($Agent) {
$browserplatform=='';
if (eregi('win',$Agent) && strpos ($Agent, '95')) {
$browserplatform="Windows 95";
}
elseif (eregi('win 9x',$Agent) && strpos($Agent, '4.90' ) ) {
$browserplatform="Windows ME";
}
elseif (eregi('win',$Agent) && ereg('98',$Agent)) {
$browserplatform= " Windows 98";
}
elseif (eregi('win',$Agent) && eregi('nt 5.0',$Agent)) {
$browserplatform="Windows 2000";
}
elseif (eregi('win',$Agent) && eregi('nt 5.1',​​$Agent)) {
$browserplatform="Windows XP";
}
elseif (eregi( ' win',$Agent) && eregi('nt 6.0',$Agent)) {
$browserplatform="Windows Vista";
}
elseif (eregi('win',$Agent) && eregi ('nt 6.1',$Agent)) {
$browserplatform="Windows 7";
}
elseif (eregi('win',$Agent) && ereg('32',$Agent ) ) {
$browserplatform="Windows 32";
}
elseif (eregi('win',$Agent) && eregi('nt',$Agent)) {
$browserplatform= " Windows NT";
}elseif (eregi('Mac OS',$Agent)) {
$browserplatform="Mac OS";
}
elseif (eregi('linux',$Agent) )) {
$browserplatform="Linux";
}
elseif (eregi('unix',$Agent)) {
$browserplatform="Unix";
}
elseif (eregi('sun',$Agent) && eregi('os',$Agent)) {
$browserplatform="SunOS";
}
elseif (eregi('ibm',$ Agent) ) && eregi('os',$Agent)) {
$browserplatform="IBM OS/2";
}
elseif (eregi('Mac',$Agent) && eregi('PC ' ,$Agent)) {
$browserplatform="Macintosh";
}
elseif (eregi('PowerPC',$Agent)) {
$browserplatform="PowerPC";
}
elseif (eregi('AIX',$Agent)) {
$browserplatform="AIX";
}
elseif (eregi('HPUX',$Agent)) {
$ browserplatform="HPUX";
}
elseif (eregi('NetBSD',$Agent)) {
$browserplatform="NetBSD";
}
elseif (eregi('BSD ' ,$Agent)) {
$browserplatform="BSD";
}
elseif (ereg('OSF1',$Agent)) {
$browserplatform="OSF1";
}
elseif (ereg('IRIX',$Agent)) {
$browserplatform="IRIX";
}
elseif (ereg('FreeBSD',$Agent)) {
$ browserplatform="FreeBSD";
}
if ($browserplatform=='') {$browserplatform = "Unknown" }
return $browserplatform;
}

?>


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。