PHP页面重定向
要使用PHP重定向到其他页面,您可以使用header()带有参数“Location:”和重定向目标的函数。
header('Location:http://www.hashbangcode.com');
但是,如果在此函数调用之前发送了任何标头,则脚本将失败。要解决此问题,您可以确保页面上没有任何内容打印出来,或者如果由于某种原因无法打印出来,则可以使用JavaScript重定向。该headers_sent()函数将允许您查看是否已将任何标头发送到浏览器,如果已发送,则将需要使用JavaScript重定向,如下所示:
location.href='http://www.hashbangcode.com';
即使用户的JavaScript已关闭,您也将要对其进行重定向,因此您也可以将Noscript标签与元刷新标签一起放入。元刷新是一种HTML标签,它告诉浏览器刷新页面,而内容标签是刷新之前要等待的时间。将URL参数添加到内容中会告诉浏览器刷新到其他URL,本质上是重定向。
这是完整版本。
$url = 'https://www.hashbangcode.com'; if (headers_sent()) { //如果有,则使用JavaScript进行重定向;如果没有,则使用meta重定向 echo ''; } else { //否则使用php方式。 header('Location:' . $url); exit(); };
用户仍然可以停止任何元重定向,如果已经发送了标头,这应该将99%的用户重定向到另一个页面,但是最好的选择是尽可能使用该header()功能。