您现在的位置: 365建站网 > 365学习 > PHP页面跳转操作实例分析(301)(header方法)

PHP页面跳转操作实例分析(301)(header方法)

文章来源:365jz.com     点击数:154    更新时间:2017-08-14 15:28   参与评论

本文实例分析了PHP页面跳转操作。分享给大家供大家参考,具体如下:
 

跳转

header()为php函数,向浏览器发送指定命令

HTML:

<meta http-equiv="Refresh" content="3;url=other.php"/>

立即跳转:

header('Location:other.php');
//file_put_contents('bee.txt','execute');
die;

执行header时候,并不是立即结束,而是会把页面执行完毕;在header前面不能有任何输出,若有开启输出缓冲则不提示错误,php.ini->output_buffering = 4096|OFF

提示跳转:

header('Refresh:3,Url=other.php');
echo '3s 后跳转';
//由于只是普通页面展示,提示的样式容易定制
die;

封装的跳转函数:

/*
 *跳转
 *@param $url 目标地址
 *@param $info 提示信息
 *@param $sec 等待时间
 *return void
*/
function jump($url,$info=null,$sec=3)
{
 if(is_null($info)){
  header("Location:$url");
 }else{
  // header("Refersh:$sec;URL=$url");
  echo"<meta http-equiv=\"refresh\" content=".$sec.";URL=".$url.">";
  echo $info;
 }
 die;
}
 

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

header()函数的定义如下:

void header (string string [,bool replace [,int http_response_code]])
可选参数replace指明是替换前一条类似标头还是添加一条相(www.365jz.com)同类型的标头,默认为替换。

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

是一种特殊的header调用,常用来实现页面跳转。注意:

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

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

PHP 301跳转的小代码

<?php  
$the_host = $_SERVER['HTTP_HOST'];
$request_uri = isset($_SERVER['REQUEST_URI']) ? $_SERVER['REQUEST_URI'] : '';
if($the_host !== 'www.365jz.com')
{
     //echo $_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'];
    header('HTTP/1.1 301 Moved Permanently');
    header('Location: http://www.365jz.com' . $_SERVER['PHP_SELF']  . $request_uri);
}
?>

如对本文有疑问,请提交到交流论坛,广大热心网友会为你解答!! 点击进入论坛


发表评论 (154人查看0条评论)
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
用户名: 验证码: 点击我更换图片
最新评论
------分隔线----------------------------