ホームページ >バックエンド開発 >PHPチュートリアル >PHP_SELF、PATH_INFO、SCRIPT_NAME、および REQUEST_URI: 違いは何ですか?
PHP_SELF、PATH_INFO、SCRIPT_NAME、REQUEST_URI: 違いを理解する
PHP アプリケーションを開発する場合、PHP_SELF と PATH_INFO の違いを理解することが重要です、SCRIPT_NAME、および REQUEST_URI。これらのサーバー変数は、現在のスクリプトのアドレスに関する情報を提供し、ナビゲーションや URL の書き換えに役立ちます。
PHP_SELF には通常、スクリプト名と任意のパスを含む、現在のスクリプトの完全な URI が含まれます。情報。ただし、リクエストが http://example.com/test.php/foo/bar の形式である場合は、SCRIPT_NAME とは異なる場合があります。
PATH_INFO にはパスが含まれますリクエスト URI の末尾にある情報。ただし、リクエスト URI が上記の形式である場合にのみ設定されます。
SCRIPT_NAME は、パス情報を除いた現在のスクリプトの名前を表します。 URI に / がない限り、通常は PHP_SELF と同じです。
REQUEST_URI には、パス、クエリ文字列、アンカーを含む完全なリクエスト URI が含まれます。クエリ文字列が存在する場合、またはサーバー側リダイレクトが使用されている場合は、PHP_SELF および SCRIPT_NAME とは異なります。
違いを説明するために、いくつかの実際的な例を次に示します。
例 1:
http://example.com/test.php/foo/bar
例 2:
http://example.com/test.php?foo=bar
例 3:
http://example.com/test。 php (mod_rewrite リダイレクトあり)
例 4:
IIS のカスタム エラー ページ:
http://example.com/test.php
これらの違いを理解することで、適切なサーバー変数を効果的に利用して、PHP でのナビゲーション、URL 書き換え、エラー処理を処理できるようになります。アプリケーション。
以上がPHP_SELF、PATH_INFO、SCRIPT_NAME、および REQUEST_URI: 違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。