【问题标题】:php header location vs php_redirectphp 标头位置与 php_redirect
【发布时间】:2013-01-16 07:18:03
【问题描述】:
【问题讨论】:
标签:
php
function
redirect
location
【解决方案1】:
http_redirect 基本上是一个辅助函数,通过允许您为 GET 数据传递一个数组,使header location 的使用变得更加容易。
【讨论】:
-
这是一个功能,可以做另一个功能可以做的事情,但更容易。辅助函数的另一个示例是 socket_create_listen() 作为 socket_create()、socket_bind() 和 socket_listen() 的快捷方式
【解决方案2】:
- Header in PHP
header() 函数将原始 HTTP 标头发送到客户端。
<?php
header("HTTP/1.0 404 Not Found");
?>
以上(取自 PHP 文档)将 404 标头发送回客户端。
- HTTP Redirect
重定向到给定的网址。
<?php
http_redirect("relpath", array("name" => "value"), true, HTTP_REDIRECT_PERM);
?>
以上(取自 PHP 文档):输出
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
Redirecting to <a href="http://www.example.com/curdir/relpath?name=value&PHPSESSID=abc">http://www.example.com/curdir/relpath?name=value&PHPSESSID=abc</a>.
【解决方案3】:
Header 将用户转发到新页面,因此 PHP 会重新初始化,这就像 HTML 元重定向,但速度更快。