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 相关文章推荐
新版PHP极大的增强功能和性能
Oct 09 PHP
一个简单的自动发送邮件系统(三)
Oct 09 PHP
php生成EXCEL的东东
Oct 09 PHP
实现了一个PHP5的getter/setter基类的代码
Feb 25 PHP
一个简单的php实现的MySQL数据浏览器
Mar 11 PHP
PHP面向对象分析设计的经验原则
Sep 20 PHP
一个php导出oracle库的php代码
Apr 20 PHP
PHP高自定义性安全验证码代码
Nov 27 PHP
PHP json_encode中文乱码问题的解决办法
Sep 09 PHP
XAMPP安装与使用方法详细解析
Nov 27 PHP
php使用百度ping服务代码实例
Jun 19 PHP
用php+ajax新建流程(请假、进货、出货等)
Jun 11 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
php不使用插件导出excel的简单方法
2014/03/04 PHP
laravel框架select2多选插件初始化默认选中项操作示例
2020/02/18 PHP
Jquery validation remote 验证的缓存问题解决方法
2014/03/25 Javascript
Egret引擎开发指南之视觉编程
2014/09/03 Javascript
jQuery中:disabled选择器用法实例
2015/01/04 Javascript
深入理解JavaScript系列(28):设计模式之工厂模式详解
2015/03/03 Javascript
JS实现在网页中弹出一个输入框的方法
2015/03/03 Javascript
cocos2dx骨骼动画Armature源码剖析(三)
2015/09/08 Javascript
Jquery Easyui日历组件Calender使用详解(23)
2016/12/18 Javascript
js实现导航吸顶效果
2017/02/24 Javascript
[js高手之路]HTML标签解释成DOM节点的实现方法
2017/08/31 Javascript
微信小程序wx.previewImage预览图片实例详解
2017/12/07 Javascript
在 Angular中 使用 Lodash 的方法
2018/02/11 Javascript
React key值的作用和使用详解
2018/08/23 Javascript
详解 微信小程序开发框架(MINA)
2019/05/17 Javascript
JS函数参数的传递与同名参数实例分析
2020/03/16 Javascript
JavaScript Date对象功能与用法学习记录
2020/04/28 Javascript
[57:09]DOTA2-DPC中国联赛 正赛 Phoenix vs Dynasty BO3 第一场 1月26日
2021/03/11 DOTA
python网络编程学习笔记(三):socket网络服务器
2014/06/09 Python
pandas系列之DataFrame 行列数据筛选实例
2018/04/12 Python
python使用turtle绘制分形树
2018/06/22 Python
Django csrf 两种方法设置form的实例
2019/02/03 Python
浅谈python 中类属性共享的问题
2019/07/02 Python
Django通用类视图实现忘记密码重置密码功能示例
2019/12/17 Python
Python闭包装饰器使用方法汇总
2020/06/29 Python
床上用品全球在线购物:BeddingInn
2016/12/18 全球购物
欧舒丹加拿大官网:L’Occitane加拿大
2017/10/29 全球购物
美国羊皮公司:Overland
2018/01/15 全球购物
英国最大的独立玩具专卖店:The Entertainer
2019/09/06 全球购物
木工主管岗位职责
2013/12/08 职场文书
幼儿园老师辞职信
2014/01/20 职场文书
运动会广播稿500字
2014/01/28 职场文书
采购类个人求职的自我评价
2014/02/18 职场文书
大学四年个人总结
2015/03/03 职场文书
Java十分钟精通进阶适配器模式
2022/04/06 Java/Android
JS实现简单的九宫格抽奖
2022/06/28 Javascript