ヘッダー リダイレクト後のスクリプト終了の処理
PHP では、header() 関数を使用して HTTP ヘッダーをクライアントに送信します。リダイレクトに使用する場合、よくある疑問が生じます: exit() を呼び出すべきですか、それとも header() を呼び出した後に return するべきですか?
次のシナリオを検討してください:
<?php $urlFailToGoTo = '/formerror.php'; if (sth) { header(sprintf("Location: %s", $urlFailToGoTo)); exit(); // Should I call exit() here? } ?>
リダイレクト ヘッダーを送信した後、明示的に終了しない限り、スクリプトの実行は継続します。即時のリダイレクトを確実にするには、header() の後に exit() を呼び出すことをお勧めします。これにより、リダイレクトを妨げる可能性のあるコードの実行が防止されます。
exit() が推奨される理由
exit() と return は両方ともスクリプトを終了できますが、実行、exit() にはいくつかの機能があります利点:
したがって、ベスト プラクティスは次の呼び出しです。 header() を呼び出した直後に exit() を実行して、クリーンかつ即時のリダイレクトを確保します。
以上がPHP の `header()` リダイレクトの後に `exit()` または `return` を使用する必要がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。