首先我们先要了解php header函数是干什么的。PHP 中 header()函数的作用是给客户端发送头信息。
什么是头信息?
这里只作简单解释,详细的自己看http协议。
在 HTTP协议中,服务器端的回答(response)内容包括两部分:头信息(header) 和体内容,这里的头信息不是HTML中的<head></head>部分,同样,体内容也不是<BODY>< /BODY>。头信息是用户看不见的,里面包含了很多项,包括:服务器信息、日期、内容的长度等。而体内容就是整个HTML,也就是你所能看见的全部东西。
头信息有什么用呢?
头信息的作用很多,最主要的有下面几个:
1、跳转:
当浏览器接受到头信息中的 Location: xxxx 后,就会自动跳转到 xxxx 指向的URL地址,这点有点类似用 js 写跳转。但是这个跳转只有浏览器知道,不管体内容里有没有东西,用户都看不到。
2、指定网页的内容:
同样一个 文件,如果头信息中指定:Content-type: application/ 的话,浏览器会将其按照 文件格式解析。但是,如果头信息中是:Content-type: text/ 的话,浏览器就会将其看作存文本解析。(浏览器不是按照扩展名解析文件的)
php header跳转失败的原因:
我们在使用header跳转时,要注意一下几点,如果header跳转失败,可以从以下几点来分析原因:
- location和“:”号间不能有空格,否则会出错.//xxx.com
- 在用header前不能有任何的输出,包括include的页面中标签“?>”后不能有空格.
- PHP的 header 跳转之前不能有任何内容输出,因为PHP开始执行的时候就已经向浏览器送出HTTP头信息,之后就不再允许更改了.但是如果必须要在输出之后再处理header信息的话可以使用 ob_start() ob_end_flush() 来缓存一下要发送的内容,等到header继续再发送内容.或者一个更简单的办法,修改php.ini,找到 output_buffering=Off 修改为 output_buffering=4096.
最后需要注意的一点:php header跳转之后,要在header函数之后加上exit()来结束脚本执行,如果不加exit(),则会执行后面的语句。
继续阅读与本文标签相同的文章
上一篇 :
php header跳转后代码是否会继续执行
下一篇 :
Flutter 之APP 生命周期
-
未来几年,这4个大学专业最吃香,前景广阔堪称铁饭碗!
2026-05-14栏目: 教程
-
这间屋子没有电话
2026-05-14栏目: 教程
-
曾经扬言“我要摧毁人类”的机器人,在拥有公民身份后,近况如何?
2026-05-14栏目: 教程
-
中国客车“抢眼”世界客车博览会
2026-05-14栏目: 教程
-
充分利用系统磁盘空间,Windows 7操作系统如何创建压缩文件夹
2026-05-14栏目: 教程
