php页面跳转的几种方式

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010889390/article/details/51355947

@: PHP页面跳转的三种方式

第一种方式:header()

header()函数的主要功能是将HTTP协议标头(header)输出到浏览器。
语法:

void header ( string $string [, bool $replace = true [, int $http_response_code ]] )

可选参数replace指明是替换前一条类似标头还是添加一条相同类型的标头,默认为替换。
第二个可选参数http_response_code强制将HTTP相应代码设为指定值。 header函数中Location类型的标头是一种特殊的header调用,常用来实现页面跳转。注意:1.location和“:”号间不能有空格,否则不会跳转。

举例:

<html>
<?php
/* This will give an error. Note the output
 * above, which is before the header() call */
header('Location: http://www.example.com/');
exit;
?>

注意:
- header执行前不能有任何输出
- location和:之间不能有空格
- header后的php代码还会执行,所以需要注意使用exit;

第二种方式:meta标签

Meta标签是HTML中负责提供文档元信息的标签,在PHP程序中使用该标签,也可以实现页面跳转。 若定义http-equiv为refresh,则打开该页面时将根据content规定的值在一定时间内跳转到相应页面。

< meta http-equiv="refresh" 
content="1;url=http://
www.baidu.com"> 

第三种方式:javascript

通过使用windows.location.href=‘url’; 是页面自动跳转到新的地址

< ?php  
$url = "http://www.baidu.com";  
echo "< script language='javascript' 
type='text/javascript'>";  
echo "window.location.href='$url'";  
echo "< /script>";  
?> 

第四种方式:form表单

通过php加载一个html页面,html页面中隐藏一个form表单,再写个js在页面加载时自动提交form表单达成跳转

<html>
<head>
    <meta charset="utf-8">
</head>
<body onload="load()">
<form id="formCommit" action="http://www.baidu.com" method="post">
<input type="hidden" id = "req" name="req" value="<?php echo htmlspecialchars($param['resp']);?>" />
<input type="hidden" id = "sign" name="sign" value="<?php echo htmlspecialchars($param['sign']);?>" />
</form>
<script type="text/javascript">
function load(){
   document.getElementById("formCommit").submit();
}
</script>
</body>
</html>

猜你喜欢

转载自blog.csdn.net/u010889390/article/details/51355947