php如何实现header跳转

php如何实现header跳转,第1张

概述php如何实现header跳转

PHP实现header跳转的方法以及注意事项:

header()函数是PHP中进行页面跳转的一种十分简单的方法。header()函数的主要功能是将http协议标头(header)输出到浏览器。

header()函数的定义如下:

voID header (string string [,bool replace [,int http_response_code]])


可选参数replace指明是替换前一条类似标头还是添加一条相(www.jb51.cc)同类型的标头,默认为替换。

第二个可选参数http_response_code强制将http相应代码设为指定值。 header函数中Location类型的标头是一种特殊的header调用,常用来实现页面跳转。注意:

1.location和“:”号间不能有空格,否则不会跳转。
2.在用header前不能有任何的输出。
3.header后的PHP代码还会被执行。例如,将浏览器重定向到PHP.cn

<?PHP //重定向浏览器header("Location: https://www.jb51.cc"); //确保重定向后,后续代码不会被执行exit;?>

1、PHP跳转代码一句话式:

<?PHP$url = $_GET['url'];header("Location:$url");?>

2、PHP跳转代码if判断式:

复制代码 代码如下:

if($_cookie["u_type"]){ header('location:register.PHP');} else{ setcookie('u_type','1','86400*360');//设置cookie长期有效 header('location:zc.HTML');

:保存为zc.PHP,当用户访问zc.PHP时,判断一个cookie是否存在,如果存(www.jb51.cc)在就跳转到register.PHP,如果不存在则创建cookie然后跳转到zc.HTML.

URL重定向函数

function redirect($url, $time=0, $msg=”) { //多行URL地址支持$url = str_replace(array(“n”, “r”), ”, $url); if ( empty($msg) ) $msg = “系统将在{$time}秒之后自动跳转到{$url}!”;if (!headers_sent()) { // redirect if (0 === $time) { header(‘Location: ‘ . $url); } else { header(“refresh:{$time};url={$url}”);echo($msg); } exit(); } else { $str = “<Meta http-equiv='Refresh' content='{$time};URL={$url}'>”;if ($time != 0) $str .= $msg; exit($str); } }

上面的不能返回404状态,如果是页面跳转之后返回404状态代码我们可如下 *** 作

function getref() { $url = @$_SERVER['http_REFERER']; if( !empty( $url ) ) { if( !strstr($url ,'jb51.net' ) && !strstr($url,'jb51.net')) { @header("http/1.1 404 not found"); @header("status: 404 not found"); include("404.HTML");//跳转到某一个页面,推荐使用这种方法 exit(); } } else { @header("http/1.1 404 not found"); @header("status: 404 not found"); include("404.HTML");//跳转到某一个页面,推荐使用这种方法 exit(); } }

如果要做301也差不多

<?PHP $the_host = $_SERVER['http_HOST']; $request_uri = isset($_SERVER['REQUEST_URI']) ? $_SERVER['REQUEST_URI'] : ''; if($the_host !== 'www.jb51.net') {  //echo $_SERVER['http_HOST'].$_SERVER['PHP_SELF'];  header('http/1.1 301 Moved Permanently');  header('Location: https://www.jb51.net' . $_SERVER['PHP_SELF'] . $request_uri); } ?>

相关推荐:编程之家网 总结

以上是编程之家为你收集整理的php如何实现header跳转全部内容,希望文章能够帮你解决php如何实现header跳转所遇到的程序开发问题。

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/997769.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-21
下一篇 2022-05-21

发表评论

登录后才能评论

评论列表(0条)

保存