php header()函数使用说明


Posted in PHP onJuly 10, 2008

header()函数使用说明:  

一、作用:  
~~~~~~~~~  
       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 相关文章推荐
解决文件名解压后乱码的问题 将文件名进行转码的代码
Jan 10 PHP
php递归创建和删除文件夹的代码小结
Apr 13 PHP
PHP设计模式之迭代器模式的深入解析
Jun 13 PHP
php 字符串压缩方法比较示例
Jan 23 PHP
PHP对接微信公众平台消息接口开发流程教程
Mar 25 PHP
PhpDocumentor 2安装以及生成API文档的方法
May 21 PHP
PHP获取当前完整URL地址的函数
Dec 21 PHP
php获取指定(访客)IP所有信息(地址、邮政编码、国家、经纬度等)的方法
Jul 06 PHP
golang与PHP输出excel示例
Jul 22 PHP
YII2框架中使用yii.js实现的post请求
Apr 09 PHP
老生常谈PHP面向对象之注册表模式
May 26 PHP
[原创]PHP获取数组表示的路径方法分析【数组转字符串】
Sep 01 PHP
php下实现一个阿拉伯数字转中文数字的函数
Jul 10 #PHP
兼容PHP5的PHP目录管理函数库
Jul 10 #PHP
php 防止单引号,双引号在接受页面转义
Jul 10 #PHP
功能齐全的PHP发送邮件类代码附详细说明
Jul 10 #PHP
使用PHP批量生成随机用户名
Jul 10 #PHP
用PHP与XML联手进行网站编程代码实例
Jul 10 #PHP
PHP写入WRITE编码为UTF8的文件的实现代码
Jul 07 #PHP
You might like
把从SQL中取出的数据转化成XMl格式
2006/10/09 PHP
在php中取得image按钮传递的name值
2006/10/09 PHP
PHP中redis的用法深入解析
2014/02/20 PHP
PHP使用get_headers函数判断远程文件是否存在的方法
2014/11/28 PHP
php实现将HTML页面转换成word并且保存的方法
2016/10/14 PHP
详解PHP中的序列化、反序列化操作
2017/03/21 PHP
laravel自定义分页效果
2017/07/23 PHP
Prototype1.5 rc2版指南最后一篇之Position
2007/01/10 Javascript
JQuery自定义事件的应用 JQuery最佳实践
2010/08/01 Javascript
JS简单的图片放大缩小的两种方法
2013/11/11 Javascript
关于JavaScript对象的动态选择及遍历对象
2014/03/10 Javascript
JavaScript获取数组最小值和最大值的方法
2015/06/09 Javascript
分享12个实用的jQuery代码片段
2016/03/09 Javascript
JavaScript的模块化开发框架Sea.js上手指南
2016/05/12 Javascript
jQuery实现的手动拖动控制进度条效果示例【测试可用】
2018/04/18 jQuery
node.js中TCP Socket多进程间的消息推送示例详解
2018/07/10 Javascript
JavaScript函数式编程(Functional Programming)组合函数(Composition)用法分析
2019/05/22 Javascript
在vue中使用axios实现post方式获取二进制流下载文件(实例代码)
2019/12/16 Javascript
Js数组扁平化实现方法代码总汇
2020/11/11 Javascript
python 正则式使用心得
2009/05/07 Python
python enumerate函数的使用方法总结
2017/11/15 Python
pandas修改DataFrame列名的方法
2018/04/08 Python
python爬虫之验证码篇3-滑动验证码识别技术
2019/04/11 Python
华为2019校招笔试题之处理字符串(python版)
2019/06/25 Python
django 通过url实现简单的权限控制的例子
2019/08/16 Python
keras中的卷积层&amp;池化层的用法
2020/05/22 Python
欧舒丹澳洲版:L’OCCITANE
2017/07/17 全球购物
毕业生求职简历的自我评价
2013/10/23 职场文书
童装店创业计划书
2014/01/09 职场文书
城建学院毕业生自荐信
2014/01/31 职场文书
经典婚礼主持开场白
2014/03/13 职场文书
优秀家长事迹材料
2014/05/17 职场文书
2016新年致辞
2015/08/01 职场文书
反腐倡廉学习心得体会范文
2015/08/15 职场文书
学校体育节班级口号
2015/12/25 职场文书
mysql 体系结构和存储引擎介绍
2022/05/06 MySQL