PHP是否可以在执行函数后进行重定向调用?我正在创建一个函数,希望将其重定向到位于同一根文件夹中的文件。能做到吗
if (...) { // I am using echo here. } else if ($_SESSION['qnum'] > 10) { session_destroy(); echo "Some error occured."; // Redirect to "user.php". }
是的,您将使用标题功能。
/* Redirect browser */ header("Location: http://www.yourwebsite.com/user.php"); exit();
exit()在此之后立即调用是一个好习惯,这样就不会执行其下面的代码。
exit()
另外,从文档中:
请记住,必须先通过常规HTML标记,文件中的空白行或从PHP发送任何实际输出,然后调用header()。使用include()或require(),函数或另一个文件访问函数读取代码,并在调用header()之前输出空格或空行,这是一个非常常见的错误。使用单个PHP / HTML文件时,存在相同的问题。
这意味着您不应在header()函数之前回显任何内容,因为这样做很可能会引发错误。另外,您还需要在所有其他输出之前验证此代码是否已运行。
header()