PHP のスーパーグローバル
PHP はスーパーグローバル (自動グローバルまたはオートグローバルとも呼ばれる) の概念をサポートします。 スーパーグローバルは、すべてのスコープで使用できる変数です。
すべてのスーパーグローバルについては、 php.net Web サイトで詳しく説明されています。 CICS® TS Feature Pack for Dynamic Scripting V2.0 の PHP サポートにより、PHP スクリプト開発者が使用するこれらのスーパーグローバルのサブセットが使用可能になります。
CICS TS Feature Pack for Dynamic Scripting V2.0 でサポートされるグローバル・スーパーユーザーは、以下のとおりです。
$_サーバー
$_SERVER のスーパーグローバルは、 CICS TS Feature Pack for 動的スクリプト V2.0 の属性と特定の HTTP リクエスト属性へのアクセスを提供します。 サポートされる鍵の完全なリストは、 表 1 に示されています。キー | 値 |
---|---|
$_SERVER ['argv'] |
この変数では、要求に関連付けられている照会文字列が返されます。 |
$_SERVER ['DOCUMENT_ROOT'] |
アプリケーション・ルートへのパス。 |
$_SERVER ['HTTP_ACCEPT'] |
Accept ヘッダーの値。 |
$_SERVER ['HTTP_ACCEPT_CHARSET'] |
Accept-Charset ヘッダーの値。 |
$_SERVER ['HTTP_ACCEPT_ENCODING'] |
Accept-Encoding ヘッダーの値。 |
$_SERVER ['HTTP_ACCEPT_LANGUAGE'] |
Accept-Language ヘッダーの値。 |
$_SERVER [HTTP_CONNECTION '] |
Connection ヘッダーの値。 |
$_SERVER ['HTTP_HOST'] |
Host ヘッダーの値。 |
$_SERVER ['HTTP_REFERER'] |
Referer ヘッダーの値。 |
$_SERVER ['HTTP_USER_AGENT'] |
User-Agent ヘッダーの値。 |
$_SERVER HTTPS '] |
要求が https トランスポートを使用して出された場合、値は「https」です。 |
$_SERVER ['リモート・アドレス'] |
要求を出したクライアントの IP アドレス。 |
$_SERVER ['REMOTE_HOST'] |
要求を出したクライアントのホスト名。 |
$_SERVER [' リモート・ポート] |
要求を出したクライアントのポート番号。 |
$_SERVER ['SCRIPT_FILENAME'] |
呼び出されたスクリプトのファイル名。 |
$_SERVER ['SCRIPT_NAME'] |
呼び出されたスクリプトの名前。 |
$_SERVER ['SERVER_PORT'] |
サーバーが要求を受け付けたポート番号。 |
$_SERVER ['REQUEST_METHOD'] |
要求の HTTP メソッド。 |
$_SERVER ['REQUEST_URI'] |
HTTP 要求に関連付けられている URI。 |
$_SERVER ['REQUEST_TIME'] |
要求がスクリプトに対してディスパッチされたときのタイム・スタンプ。 |
$_GET ($_GET)
$_GET 変数は、HTTP 要求に関連付けられている URL 照会パラメーターへのアクセスに使用されます。 URL 照会パラメーターは、HTTP GET 要求に最も一般的に使用されますが、これらはすべての HTTP 要求タイプでサポートされます。 次の要求の場合:/search?title=Rose&author=Eco
- $_GET['title'] により、値「Rose」が取得されます。
- $_GET['author'] により、値「Eco」が取得されます。
$_POST ($_POST)
$_POST 変数は $_GET 変数に似ていますが、BODY のコンテンツ・タイプが application/x-www-form-urlencoded の場合は HTTP POST 要求の BODY を処理する点が異なります。$_Cookie
$_COOKIE 変数を使用すると、スクリプト開発者は要求のクライアントによって送信された Cookie を照会することができます。 Cookie キーで配列アクセサーを指示するために「[]」表記が使用される場合は、Cookie の値は PHP の配列によってアクセスできます。要求 ($_REQUEST)
$_REQUEST 変数では、$_GET、$_POST、および $_COOKIE 配列の内容が提供されます。 同じ名前のパラメーターが各配列の 2 つ (または、それ以上) にある場合は、$_REQUEST 内のそのパラメーターの値が未定義です。$HTTP_RAW_POST_DATA
$HTTP_RAW_POST_DATA 変数には、HTTP POST 要求の一部として送信された未加工のポスト・データが含まれています。 この変数は、application/x-www-form-urlencoded と multipart/form-data のコンテンツ・タイプでは使用できません。ファイル ($_FILES)
$_FILES 変数には、現在の HTTP 要求中にアップロードされたすべてのファイルに関する情報が含まれています。 以下の HTML フォームが与えられます。<form action="http://localhost:8080/testupload.php">
<input type="file" name="myfile"/>
</form>
$_FILES 変数は、以下のスクリプトでアクセスすることができます。<?php
echo $_FILES['myfile']['name'] . "\n"; // name of the file on the client
echo $_FILES['myfile']['type'] . "\n"; // content type - text/plain
echo $_FILES['myfile']['size'] . "\n"; // file length
echo $_FILES['myfile']['tmp_name'] . "\n"; // path to the temporary file on the server
echo $_FILES['myfile']['error'] . "\n"; // error code
?>
現在、アップロード中にファイルのコンテンツ・タイプが保管されないため、$_FILES['myfile']['type'] の値は、常に text/plain になります。