header()函数使用说明


Posted in PHP onNovember 23, 2006

一、作用:  
~~~~~~~~~  
       PHP只是以HTTP协议将HTML文档的标头送到浏览器,告诉浏览器具体怎么处理这个页面,至于传送的内容则需要熟悉一下HTTP协议了,与PHP无关了,可参照http://www.w3.org/Protocols/rfc2616/rfc2616。  
       传统的标头一定包含下面三种标头之一,并只能出现一次。  
       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");  
       ?> 

PHP 相关文章推荐
php 注释规范
Mar 29 PHP
PHP URL路由类实例
Nov 12 PHP
PHP APC配置文件2套和参数详解
Jun 11 PHP
php实现批量压缩图片文件大小的脚本
Jul 04 PHP
php相对当前文件include其它文件的方法
Mar 13 PHP
PHP网络操作函数汇总
May 18 PHP
php算法实例分享
Jul 14 PHP
php 参数过滤、数据过滤详解
Oct 26 PHP
使用php+swoole对client数据实时更新(一)
Jan 07 PHP
PHP中STDCLASS用法实例分析
Nov 11 PHP
PHP实现二维数组按某列进行排序的方法
Nov 18 PHP
PHP微信分享开发详解
Jan 14 PHP
如何使用脚本模仿登陆过程
Nov 22 #PHP
php5 and xml示例
Nov 22 #PHP
PHP中的类-什么叫类
Nov 20 #PHP
解决phpmyadmin 乱码,支持gb2312和utf-8
Nov 20 #PHP
PHP配置心得包含MYSQL5乱码解决
Nov 20 #PHP
PHP+MySQL5.0中文乱码解决方法
Nov 20 #PHP
PHP的面试题集,附我的答案和分析(一)
Nov 19 #PHP
You might like
PHP 和 MySQL 基础教程(四)
2006/10/09 PHP
Discuz! 5.0.0论坛程序中加入一段js代码,让会员点击下载附件前自动弹出提示窗口
2007/04/18 PHP
PHP 配置文件中open_basedir选项作用
2009/07/19 PHP
深入理解PHP原理之Session Gc的一个小概率Notice
2011/04/12 PHP
phpexcel导出excel的颜色和网页中的颜色显示不一致
2012/12/11 PHP
PHP实现的各类hash算法长度及性能测试实例
2017/08/27 PHP
实现复选框全选/全不选切换
2006/12/23 Javascript
抽出www.templatemonster.com的鼠标悬停加载大图模板的代码
2007/07/11 Javascript
javascript中最常用的继承模式 组合继承
2010/08/12 Javascript
深入理解JavaScript定时机制
2010/10/29 Javascript
js的表单操作 简单计算器
2011/12/29 Javascript
在JavaScript中使用对数Math.log()方法的教程
2015/06/15 Javascript
jQuery鼠标事件汇总
2015/08/30 Javascript
js对象浅拷贝和深拷贝详解
2016/09/05 Javascript
jQuery动态移除和添加背景图片的方法详解
2017/03/07 Javascript
div中文字内容溢出常见的解决方法
2017/03/16 Javascript
用 js 的 selection range 操作选择区域内容和图片
2017/04/18 Javascript
在原生不支持的旧环境中添加兼容的Object.keys实现方法
2017/09/11 Javascript
ES6中Class类的静态方法实例小结
2017/10/28 Javascript
vue中的计算属性的使用和vue实例的方法示例
2017/12/04 Javascript
判断jQuery是否加载完成,没完成继续判断的解决方法
2017/12/06 jQuery
Vue2.x Todo之自定义指令实现自动聚焦的方法
2019/01/08 Javascript
js类的继承定义与用法分析
2019/06/21 Javascript
vue.js路由mode配置之去掉url上默认的#方法
2019/11/01 Javascript
weui上传多图片,压缩,base64编码的示例代码
2020/06/22 Javascript
Python多线程应用于自动化测试操作示例
2018/12/06 Python
pygame库实现移动底座弹球小游戏
2020/04/14 Python
用python打开摄像头并把图像传回qq邮箱(Pyinstaller打包)
2020/05/17 Python
Speedo速比涛法国官方网站:泳衣、泳镜、泳帽、泳裤
2019/07/30 全球购物
师范生的个人求职信范文
2014/01/04 职场文书
业绩考核岗位职责
2014/02/01 职场文书
考试违纪检讨书
2014/02/02 职场文书
HR求职自荐信范文
2014/06/21 职场文书
python 模拟在天空中放风筝的示例代码
2021/04/21 Python
Python词云的正确实现方法实例
2021/05/08 Python
Python实现双向链表
2022/05/25 Python