PHP でのスクリプトのアドレスの決定: PHP_SELF、PATH_INFO、SCRIPT_NAME、REQUEST_URI
PHP アプリケーションを開発する場合、PHP_SELF、PATH_INFO の違いを理解する、SCRIPT_NAME、および REQUEST_URI は、スクリプトのアドレスを確実に決定するために重要です。
PHP_SELF は、クエリ文字列を含むスクリプトの完全な URL を表します。ほとんどの場合、これはスクリプトの完全なアドレスを取得するための最も信頼できるオプションです。ただし、リクエストが mod_rewrite ディレクティブを経由する場合、PHP_SELF は実際にリクエストされた URL を反映しない可能性があります。
PATH_INFO には、スクリプト名の後の URL の部分が格納されます。この情報は mod_rewrite を使用するときに利用可能になりますが、特定の状況では空になる場合があります。
SCRIPT_NAME には、パス情報を除いた、実行されるスクリプトの実際のファイル名が含まれます。 PHP_SELF とは異なり、SCRIPT_NAME は mod_rewrite の影響を受けません。
REQUEST_URI は、パス、クエリ文字列、アンカー フラグメントを含む完全なリクエスト URI をキャプチャします。これは、プロキシ サーバーを使用する場合やリダイレクトを処理する場合に便利です。
違いを説明するために、いくつかの例を次に示します。
例 1: mod_rewrite を使用して http://example.com/test.php/foo/bar を http://example.com/index.php/test.php/foo/bar にリダイレクトする場合:
例 2: http://example.com/test.php?foo=bar:
例3: mod_rewrite を使用して http://example.com/test.php を http://example.com/test2.php にリダイレクトする場合:
これらの違いを理解することで、最適な変数を選択できます特定のニーズに合わせて、Web サーバーの構成や URL 操作に関係なく、スクリプトのアドレスへの信頼できるアクセスを確保します。
以上がスクリプトのアドレスの決定において、PHP_SELF、PATH_INFO、SCRIPT_NAME、および REQUEST_URI はどのように異なりますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。