加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

如何在PHP上声明多个标题

发布时间:2020-12-13 17:35:36 所属栏目:PHP教程 来源:网络整理
导读:我想根据用户操作将用户发送到不同的页面.所以我在页面的顶部做了多个功能,如下所示: ?phpfunction one() { header("location: pagea.php");}function two() { header("location: pageb.php");}function three() { header("location: pagec.php");}? 当然,
我想根据用户操作将用户发送到不同的页面.所以我在页面的顶部做了多个功能,如下所示:
<?php

function one() {
     header("location: pagea.php");
}
function two() {
     header("location: pageb.php");
}
function three() {
     header("location: pagec.php");
}

?>

当然,我收到一个错误,因为我正在声明标题.起初我虽然这样会好起来的,因为我把它们包含在函数内,并且一次调用了一个函数.但是我仍然收到错误.有没有其他的方法呢?

我认为你误解HTTP标头位置是什么.

位置标题指示客户端导航到另一个页面.您不能每页发送一个位置标题.

此外,PHP在第一个输出之前发送头文件.输出后,您不能再指定任何标题(除非使用输出缓冲).

如果两次指定相同的标题,则默认情况下,header()将用最新的值替换以前的值…例如:

<?php
header('Location: a.php');
header('Location: b.php');
header('Location: c.php');

将用户重定向到c.php,不要一次通过a.php或b.php.您可以通过将错误值传递给第二个参数(称为$replace)来覆盖此行为:

<?php
header('X-Powered-By: MyFrameWork',false);
header('X-Powered-By: MyFrameWork Plugin',false);

位置标题只能指定一次.发送多个位置标题不会将用户重定向到页面…它可能会混淆UA中的垃圾.另外,了解代码在发送Location头后继续执行.所以跟着那个header()exit的电话.这是一个适当的重定向功能:

function redirect($page) {
    header('Location: ' . $page);
    exit;
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读