Ⅰ php中header()作用
header的用法
标头 (header) 是服务器以 HTTP 协义传 HTML 资料到浏览器前所送出的字串,在标头
与 HTML 文件之间尚需空一行分隔。有关 HTTP 的详细说明,可以参 RFC 2068 官方文件
(http://www.w3.org/Protocols/rfc2068/rfc2068)。在 PHP 中送回 HTML 资料前,需先
传完所有的标头。
注意: 传统的标头一定包含下面三种标头之一,并只能出现一次。
Content-Type: xxxx/yyyy
Location: xxxx:yyyy/zzzz
Status: nnn xxxxxx
在新的多型标头规格 (Multipart MIME) 方可以出现二次以上。
使用范例
范例一: 本例使浏览器重定向到 PHP 的官方网站。
Header("Location: http://www.php.net";);
exit;
>?
范例二: 要使用者每次都能得到最新的资料,而不是 Proxy 或 cache 中的资料,可以使用下列的标头
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . "GMT");
header("Cache-Control: no-cache, must-revalidate");
header("Pragma: no-cache");
>?
范例三: 让使用者的浏览器出现找不到档案的信息。
header("Status: 404 Not Found");
>?
范例四:让使用者下载档案。
header("Content-type: application/x-gzip");
header("Content-Disposition: attachment; filename=文件名\");
header("Content-Description: PHP3 Generated Data");
?>
header重定向 就等价于替用户在地址栏输入url
---------------------------------
//刚好找到比较详细的资料!
Ⅱ <php header("Location: url"); >中header一般怎么运用
一、作用:
~~~~~~~~~
PHP只是以HTTP协议将HTML文档的标头送到浏览器,告诉浏览器具体怎么处理这个页面,至于传送的内容则需要熟悉一下HTTP协议了,与PHP无关了
传统的标头一定包含下面三种标头之一,并只能出现一次。
Location: xxxx:yyyy/zzzz
Content-Type: xxxx/yyyy
Status: nnn xxxxxx
二、先来了解一下HTTP协议的运作方式
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
HTTP协议是基于请求/响应范式的。一个客户机与服务器建立连接后,发送一个请求给服务器,请求方式的格式为,统一资源标识符、协议版本号,后边是 MIME信息包括请求修饰符、客户机信息和可能的内容。服务器接到请求后,给予相应的响应信息,其格式为一个状态行包括信息的协议版本号、一个成功或错误的代码,后边是MIME信息包括服务器信息、实体信息和可能的内容。
它分四个过程,在HTTP协议中,服务端是指提供HTTP服务的部分,客户端是指你使用的浏览器或者下载工具等等。在通讯时,由客户端发出请求连接,服务端建立连接;然后,客户端发出HTTP请求(Request),服务端返回响应信息(Respond),由此完成一个HTTP操作。
三、HTTP协议状态码表示的意思
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1××保留
2××表示请求成功地接收
3××为完成请求客户需进一步细化请求
4××客户错误
5××服务器错误
四、操作实例:
~~~~~~~~~~~~~
<1> 重定向功能,这种最常见
<?php
Header("Location: http://www.php.net");
?>
<2> 强制用户每次访问这个页面时获取最新资料,而不是使用存在客户端的缓存。
<?php
//告诉浏览器此页面的过期时间(用格林威治时间表示),只要是已经过去的日期即可。
header("Expires: Mon, 26 Jul 1970 05:00:00 GMT");
//告诉浏览器此页面的最后更新日期(用格林威治时间表示)也就是当天,目的就是强迫浏览器获取最新资料
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . "GMT");
//告诉客户端浏览器不使用缓存
header("Cache-Control: no-cache, must-revalidate");
//参数(与以前的服务器兼容),即兼容HTTP1.0协议
header("Pragma: no-cache");
//输出MIME类型
header("Content-type: application/file");
//文件长度
header("Content-Length: 227685");
//接受的范围单位
header("Accept-Ranges: bytes");
//缺省时文件保存对话框中的文件名称
header("Content-Disposition: attachment; filename=$filename");
?>
<3> 输出状态值到浏览器,主要用于访问权限控制
<?php
header('HTTP/1.1 401 Unauthorized');
header('status: 401 Unauthorized');
?>
比如要限制一个用户不能访问该页,则可设置状态为404,如下所示,这样浏览器就显示为即该页不存在
<?php
header('HTTP/1.1 404 Not Found');
header("status: 404 Not Found");
?>
注意: 传统的标头一定包含下面三种标头之一,并只能出现一次。 Content-Type: xxxx/yyyy Location: xxxx:yyyy/zzzz Status: nnn xxxxxx 在新的多型标头规格 (Multipart MIME) 方可以出现二次以上。
使用范例
范例一: 本例使浏览器重定向到 PHP 的官方网站。 Header("Location: http://www.php.net"); exit; >?
范例二: 要使用者每次都能得到最新的资料,而不是 Proxy 或 cache 中的资料,可以使用下列的标头 header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . "GMT"); header("Cache-Control: no-cache, must-revalidate");
header("Pragma: no-cache"); >?
范例三: 让使用者的浏览器出现找不到档案的信息。
header("Status: 404 Not Found"); >?
范例四:让使用者下载档案。
header("Content-type: application/x-gzip");
header("Content-Disposition: attachment; filename=文件名"); header("Content-Description: PHP3 Generated Data"); >?
Ⅲ php中的header函数
header("Location:page.php");
是为了跳转到其它页面。当然是运行到它时才跳过去。
编译时还是运行时执行?这个问题问在include 与 require合适。。。。
注意区分它与 include 与 require区别
另外补充回答:
==================
页面跳转并不能用来阻止程序中其他语句的执行?
页面已经跳转了,以前的页面header语句后的逻辑代码是会继续执行的,但是输出语句是不会执行的。
你可以拿个简单的例子做实验:
-----------------------------
文件 a.php
<?php
header('Location:b.php');
echo '我是跳转前的页面a.php!';
?>
文件 b.php
<?php
echo '我是跳转后的页面b.php!';
?>
运行a.php,发现输出的是 "我是跳转后的页面b.php"
如果有二个header以上的header 则以最后一个为准。
同样上面的例子:
-----------------------------
文件 a.php
<?php
header('Location:b.php');
header('Location:c.php');
echo '我是跳转前的页面a.php!';
?>
运行a.php,会跳到c.php
再来个例子证明,逻辑代码是会执行的。
--------
<?php
header('Location:b.php');
$a = 'c.php';
header('Location:'.$a);
echo '我是aa.php';
?>
结果跳到了c.php,证明$a='c.php'执行了。
---------------------
总结:
header后,想禁止后面语句执行,你可以加上exit; 或return;
如下
<?php
header('Location:b.php');
return;
//exit;
$a = 'c.php';
header('Location:'.$a);
echo '我是a.php';
?>
则只会跳到b.php页面,不会到c.php.
---------------------
这个答案,你满意不?:)
Ⅳ php中的header是什么意思
header() 函数向客户端发送原始的 HTTP 报头。
语法
header(string,replace,http_response_code)
参数描述
string 必需。规定要发送的报头字符串。
replace 可选。指示该报头是否替换之前的报头,或添加第二个报头。
默认是 true(替换)。false(允许相同类型的多个报头)。
http_response_code 可选。把 HTTP 响应代码强制为指定的值。(PHP 4 以及更高版本可用)
用于301重定向、网页跳转、和控制网页缓存等
Ⅳ PHP 函数 header() 后跟不跟die();的区别是什么
header送出页面的头标签,
die()等同与exit(),
手册上的定义为
void exit ([ string $status ] )
void exit ( int $status )
用来终止php代码的运行,如果有消息,在程序退出时打印给定的消息。
Ⅵ PHP语言:header()函数
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . "GMT");
header("Cache-Control: no-cache, must-revalidate");
header("Pragma: no-cache");
上面组合是禁用缓存
header("Content-Language: charset=zh-cn");
说明字符集是简体中文
header("Content-type: text/html; charset=GB2312");
说明本页面是HTML内容,字符集是简体中文
Ⅶ php,如何用header函数,指到上一个文件夹的某一个文件
header ('Location:../A/a.php');
`../ `表示上一级目录。
类似的`../../`就是指上级目录的上级目录
Ⅷ PHP header和footer具体使用方法
定义和用法
header() 函数向客户端发送原始的 HTTP 报头。
认识到一点很重要,即必须在任何实际的输出被发送之前调用 header() 函数(在 PHP 4 以及更高的版本中,您可以使用输出缓存来解决此问题):
<html>
<?php
// 结果出错
// 在调用 header() 之前已存在输出
header('Location: http://www.example.com/');
?>
Ⅸ php header 函数不能正常跳转的几种解决办法
PHP页面跳转一、header()函数
header()函数是PHP中进行页面跳转的一种十分简单的方法。header()函数的主要功能是将HTTP协议标头(header)输出到浏览器。
header()函数的定义如下:
void header (string string [,bool replace [,int http_response_code]])
可选参数replace指明是替换前一条类似标头还是添加一条相同类型的标头,默认为替换。
第二个可选参数http_response_code强制将HTTP相应代码设为指定值。 header函数中Location类型的标头是一种特殊的header调用,常用来实现页面跳转。注意:1.location和“:”号间不能有空格,否则不会跳转。
2.在用header前不能有任何的输出。
3.header后的PHP代码还会被执行。例如,将浏览器重定向到冠威博客
< ?php
//重定向浏览器
header("Location: http://www.guanwei.org");
//确保重定向后,后续代码不会被执行
exit;
?>
PHP页面跳转二、Meta标签
Meta标签是HTML中负责提供文档元信息的标签,在PHP程序中使用该标签,也可以实现页面跳转。 若定义http-equiv为refresh,则打开该页面时将根据content规定的值在一定时间内跳转到相应页面。
若设置content="秒数;url=网址",则定义了经过多长时间后页面跳转到指定的网址。例如,使用meta标签实现疫苗后页面自动跳转到冠威博客。
< meta http-equiv="refresh" content="1;url=http://www.guanwei.org">
例如,以下程序meta.php实现在该页面中停留一秒后页面自动跳转到www.guanwei.org。
< ?php
$url = "http://www.guanwei.org"; ?>
< html>
< head>
< meta http-equiv="refresh" content="1; url=< ?php echo $url; ?>">
< /head>
< body>
页面只停留一秒……
< /body>
< /html>
PHP页面跳转三、javaScript(常用、推荐)
例如,此代码可以放在程序中的任何合法位置。
< ?php
$url = "http://www.guanwei.org";
echo "<script language='javascript' type='text/javascript'>";
echo "window.location.href='$url'";
echo "</script>";
?>