ホームページ  >  記事  >  バックエンド開発  >  ユーザーのブラウザとオペレーティング システムの情報を取得する PHP コード_PHP チュートリアル

ユーザーのブラウザとオペレーティング システムの情報を取得する PHP コード_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-21 15:16:35913ブラウズ

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: ' . Agent) . '
';
//訪問ユーザーのオペレーティング システム プラットフォームを表示します
echo 'Platform: '
';

//訪問ユーザーのブラウザに関する情報を取得するための $_SERVER['HTTP_USER_AGENT'] の文字列の肯定的な式の比較と分析
function destroybrowser ($Agent) {
$browseragent="" //Browser
$ 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];
$browseragent="Chrome";
}
else if (ereg( 'Safari/([0-9.]{1,3 })',$ Agent,$version)) {
$browseragent="Safari";
$browserversion="";
}
else {
$browserversion="";
$browseragent="Unknown";
}
$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 ',$Agent) && eregi('nt 6.1',$Agent)) {
$browserplatform="Windows 7";
}
elseif (eregi('win',$Agent) && ereg('32',$エージェント )) {
$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 (エレギ( 'FreeBSD',$Agent)) {
$browserplatform="FreeBSD";
}
if ($browserplatform=='') {$browserplatform = "不明" }
return $browserplatform;
}

?>



http://www.bkjia.com/PHPjc/325880.htmlwww.bkjia.com

tru​​ehttp://www.bkjia.com/PHPjc/325880.html技術記事 1. ユーザーがサーバーにアクセスすると、PHP スーパー グローバル変数 $_SERVER 配列のフィールド ['HTTP_USER_AGENT'] を使用して、アクセスしたユーザーの $_SERVER['HTTP_USER_AGENT'] 文字をすべて取得します。 .
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。