PHP - 接続情報の取得や表示 - $_SERVER
1. 取得してみる 例えば、$_SERVER['HTTP_USER_AGENT'] を利用すると、接続中のユーザのブラウザを調べることができます。 <?php $user_agent = ''; if (!empty($_SERVER['HTTP_USER_AGENT'])) { $user_agent = $_SERVER['HTTP_USER_AGENT']; } print 'HTTP_USER_AGENT=['.$user_agent.']'; ?> てなコードを記述しました。 「Windows10」で表示すると以下のような結果が取得できます。 (下記は、ずいぶん前のものなので、現在(2022年8月8日)のバージョンであれば、もっと他の文字列になります)
<?php $user_agent = ''; if (!empty($_SERVER['HTTP_USER_AGENT'])) { $user_agent = $_SERVER['HTTP_USER_AGENT']; } print 'HTTP_USER_AGENT=['.$user_agent.']'; ?>
もともと目的は、「Edge」で「CSS」未対応のものがあるので、それを判断するためだったのですが。 ここで初めて、「Edge」が「Chrome」の派生であったことを理解しました。 仮に「Chrome」かどうかを判断するには「Chrome」の文字列がはいっていて、「Edge」の文字列が入っていないこと・・・といういささかヘンテコな判断文が必要になるわけです。 2. 一覧で見る <?php foreach ($_SERVER as $key => $value) { print '<b>$_SERVER['.$key.'] => '.$value.'<b><br>'; } ?> てなコードを書いて実行すると下記のように表示されます。 (実際は上記のコードを <table></table> で囲んだり、表示したくないものを伏字にしていますが、現在接続しているあなたの情報も含まれています)
<?php foreach ($_SERVER as $key => $value) { print '<b>$_SERVER['.$key.'] => '.$value.'<b><br>'; } ?>