(PECL pecl_http >= 0.1.0)
http_redirect — HTTP リダイレクトを発行する
指定した url にリダイレクトします。
指定した url は http_build_url() で展開され、 params の内容は http_build_str() で扱われます。 また、session が true の場合はセッション ID が付加されます。 HTTP レスポンスコードは、status に応じたものが設定されます。 リダイレクト定数 のいずれかを使用すると便利です。 どのような場面でどのようなレスポンスコードが返されるのかについては、 » RFC 2616 を参照ください。デフォルトでは、いちばんうまく当てはまるステータスを PHP が決定します。
RFC に準拠するため、クライアントがすぐにリダイレクトしない場合でも "Redirecting to <a>URL</a>." と表示されます。 また、リクエストメソッドは HEAD 以外のものとなります。
INI 設定 http.log.redirect が設定されており、リダイレクトの試みが成功した場合には リダイレクトのログにエントリが書き込まれます。
リダイレクトする URL。
クエリパラメータの連想配列。
セッション情報を付加するかどうか。
独自のレスポンスステータスコード。
失敗した場合は FALSE を返します。成功した場合は 終了 します。 指定したステータスコードとなります。 "終了" の意味については、INI 設定 http.force_exit を参照ください。
例1 http_redirect() の例
<?php
http_redirect("relpath", array("name" => "value"), true, HTTP_REDIRECT_PERM);
?>
上の例の出力は以下となります。
HTTP/1.1 301 Moved Permanently X-Powered-By: PHP/5.2.2 Content-Type: text/html Location: http://www.example.com/curdir/relpath?name=value&PHPSESSID=abc <a href="http://www.example.com/curdir/relpath?name=value&PHPSESSID=abc">http://www.example.com/curdir/relpath?name=value&PHPSESSID=abc</a> にリダイレクトされます。