#$_SERVER['オプション'] の各オプションについてのメモ
phpのドキュメントをいくら見てもイマイチわからない上記についてMAMPのlocalhost環境で実行してみた
過去まとめた方の記事は以下
$_SERVERについて(過去記事)
例)
<pre>
<?php print_r($_SERVER); ?>
</pre>
<?php
//上記をブラウザ(chrome)で表示した結果(MAMPローカル環境)
//ドキュメントルート : Applications ▹ MAMP ▹ htdocs
//実行したファイル: htdocs/test2/server.php
Array
(
[HTTP_HOST] => localhost
[HTTP_CONNECTION] => keep-alive
[HTTP_CACHE_CONTROL] => max-age=0
[HTTP_SEC_CH_UA] => "Google Chrome";v="89", "Chromium";v="89", ";Not A Brand";v="99"
[HTTP_SEC_CH_UA_MOBILE] => ?0
[HTTP_UPGRADE_INSECURE_REQUESTS] => 1
[HTTP_USER_AGENT] => Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/500.30 (KHTML, like Gecko) Chrome/89.0.000.000 Safari/500.300//Webページを取得したWebブラウザ(ここの数値は変えています)
[HTTP_ACCEPT] => text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
[HTTP_SEC_FETCH_SITE] => same-origin
[HTTP_SEC_FETCH_MODE] => navigate
[HTTP_SEC_FETCH_USER] => ?1
[HTTP_SEC_FETCH_DEST] => document
[HTTP_REFERER] => http://localhost/test2/
[HTTP_ACCEPT_ENCODING] => gzip, deflate, br
[HTTP_ACCEPT_LANGUAGE] => ja,en-US;q=0.9,en;q=0.8
[PATH] => /usr/bin:/bin:/usr/sbin:/sbin
[SERVER_SIGNATURE] =>
[SERVER_SOFTWARE] => Apache/2.4.46 (Unix) OpenSSL/1.0.2u PHP/7.4.12 mod_wsgi/3.5 Python/2.7.13 mod_fastcgi/mod_fastcgi-SNAP-09***** mod_perl/2.0.11 Perl/v5.30.1
[SERVER_NAME] => localhost //PHPが実行されているWebサーバーの名前
[SERVER_ADDR] => ::1 //現在のスクリプトが実行されているWebサーバーのIPアドレス
[SERVER_PORT] => 80
[REMOTE_ADDR] => ::1 ///WebサーバーにリクエストするユーザーのIPアドレス
[DOCUMENT_ROOT] => /Applications/MAMP/htdocs
[REQUEST_SCHEME] => http
[CONTEXT_PREFIX] =>
[CONTEXT_DOCUMENT_ROOT] => /Applications/MAMP/htdocs
[SERVER_ADMIN] => ***@example.com
[SCRIPT_FILENAME] => /Applications/MAMP/htdocs/test2/server.php
[REMOTE_PORT] => 64000 //Webサーバーとの通信に使用されるポート番号(ここの数字は変えています)
[GATEWAY_INTERFACE] => CGI/1.1
[SERVER_PROTOCOL] => HTTP/1.1
[REQUEST_METHOD] => GET
[QUERY_STRING] =>
[REQUEST_URI] => /test2/server.php
[SCRIPT_NAME] => /test2/server.php //スクリプトのパス名
[PHP_SELF] => /test2/server.php //Webサーバーに要求するURLのパス名 (スクリプトのパス名のみを利用する場合は、SCRIPT_NAMEの使用が推奨される
[REQUEST_TIME_FLOAT] => 1617555.3926 //ここの数字は変えています
[REQUEST_TIME] => 1617555 //REQUEST_TIME_FLOATの整数部分
[argv] => Array
(
)
[argc] => 0
)
//上記に表示されていない主要なオプション
[REMOTE_HOST]//現在のページにアクセスしているホスト名。DNS の逆引き検索は ユーザーの REMOTE_ADDR に基づいています。
[REMOTE_USER]//Web認証されたユーザーの名前
各名称についての詳細はドキュメントや以下のサイトが役に立ちました。