gpt4 book ai didi

php - 如何在 PHP 中重定向到同一页面

转载 作者:IT王子 更新时间:2023-10-29 01:08:41 26 4
gpt4 key购买 nike

如何使用 PHP 重定向到同一页面?

比如我在本地的网址是:

http://localhost/myweb/index.php

如何在我的网站内重定向到另一个页面,例如:

header("Location: clients.php");

我知道这可能是错误的,但我真的需要把整个东西都放上去吗?如果稍后它不是 http://localhost/ 怎么办?

有没有办法做这样的事情?另外,我有很多代码,然后在处理完一些代码后结束......我正在尝试使用它进行重定向。可以吗?

最佳答案

我首选的重新加载同一页面的方法是 $_SERVER['PHP_SELF']

header('Location: '.$_SERVER['PHP_SELF']);
die;

不要忘记在 header() 之后死掉或退出;

编辑:(感谢@RafaelBarros)

如果查询字符串也是必需的,使用

header('Location:'.$_SERVER['PHP_SELF'].'?'.$_SERVER['QUERY_STRING']);
die;

编辑:(感谢@HugoDelsing)

当 htaccess url 操作在起作用时,$_SERVER['PHP_SELF'] 的值可能会将您带到错误的地方。在那种情况下,正确的 url 数据将在 $_SERVER['REQUEST_URI'] 中用于您的重定向,这可能看起来像下面 Nabil 的回答:

header("Location: http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]");
exit;

如果需要,您还可以使用 $_SERVER[REQUEST_URI] 将正确的值分配给 $_SERVER['PHP_SELF']。如果您大量使用重定向功能并且不想更改它,这会有所帮助。只需像这样在您的请求处理程序中设置正确的值:

$_SERVER['PHP_SELF'] = 'https://sample.com/controller/etc';

关于php - 如何在 PHP 中重定向到同一页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8130990/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com