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模块memcache和memcached区别分析
Jun 14 PHP
PHP 杂谈《重构-改善既有代码的设计》之四 简化条件表达式
Apr 09 PHP
解密ThinkPHP3.1.2版本之独立分组功能应用
Jun 19 PHP
ThinkPHP 404页面的设置方法
Jan 14 PHP
PHP使用Pear发送邮件(Windows环境)
Jan 05 PHP
PHP使用php-resque库配合Redis实现MQ消息队列的教程
Jun 29 PHP
PHP上传图片时判断上传文件是否为可用图片的方法
Oct 20 PHP
php的socket编程详解
Nov 20 PHP
YII2自动登录Cookie总是失效的解决方法
Jun 28 PHP
php微信公众号开发之微信企业付款给个人
Oct 04 PHP
解决PHP curl或file_get_contents下载图片损坏或无法打开的问题
Oct 11 PHP
Laravel基础_关于view共享数据的示例讲解
Oct 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中去除换行解决办法小结(PHP_EOL)
2011/11/27 PHP
PHP中防止SQL注入方法详解
2014/12/25 PHP
php的PDO事务处理机制实例分析
2017/02/16 PHP
phpMyAdmin无法登陆的解决方法
2017/04/27 PHP
CI框架(CodeIgniter)实现的导入、导出数据操作示例
2018/05/24 PHP
Jquery下判断Id是否存在的代码
2011/01/06 Javascript
js function定义函数的几种不错方法
2014/02/27 Javascript
JavaScript基础知识之方法汇总结
2016/01/24 Javascript
关于JS变量和作用域详解
2016/07/28 Javascript
javascript入门之window对象【新手必看】
2016/11/22 Javascript
JS常见疑难点分析之match,charAt,charCodeAt,map,search用法分析
2016/12/25 Javascript
深入理解AngularJS中的ng-bind-html指令
2017/03/27 Javascript
微信小程序 开发之全局配置
2017/05/05 Javascript
在原生不支持的旧环境中添加兼容的Object.keys实现方法
2017/09/11 Javascript
AngularJS实现的select二级联动下拉菜单功能示例
2017/10/25 Javascript
Echarts实现多条折线可拖拽效果
2019/12/19 Javascript
python正则表达式及使用正则表达式的例子
2018/01/22 Python
python基础教程项目二之画幅好画
2018/04/02 Python
Python检测网络延迟的代码
2018/05/15 Python
python求最大值最小值方法总结
2019/06/25 Python
python  文件的基本操作 菜中菜功能的实例代码
2019/07/17 Python
Python中Subprocess的不同函数解析
2019/12/10 Python
Python通过2种方法输出带颜色字体
2020/03/02 Python
python pandas dataframe 去重函数的具体使用
2020/07/20 Python
如何利用Python 进行边缘检测
2020/10/14 Python
俄罗斯韩国化妆品网上商店:Cosmasi.ru
2019/10/31 全球购物
生产厂厂长岗位职责
2013/12/25 职场文书
房地产公司见习自我鉴定
2014/04/28 职场文书
科技之星事迹材料
2014/06/02 职场文书
党员对照检查材料整改措施思想汇报
2014/09/26 职场文书
学校组织向国旗敬礼活动方案(中小学适用)
2014/09/27 职场文书
见习期个人总结
2015/03/05 职场文书
《雪地里的小画家》教学反思
2016/02/16 职场文书
anaconda python3.8安装后降级
2021/06/11 Python
Python经常使用的一些内置函数
2022/04/11 Python
python数据处理之Pandas类型转换
2022/04/28 Python