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 相关文章推荐
一个可以找出源代码中所有中文的工具
Oct 25 PHP
PHP实现定时生成HTML网站首页实例代码
Nov 20 PHP
关于PHP自动判断字符集并转码的详解
Jun 26 PHP
九个你必须知道而且又很好用的php函数和特点
Aug 08 PHP
php遍历文件夹和文件列表示例分享
Mar 11 PHP
PHP实现将科学计数法转换为原始数字字符串的方法
Dec 16 PHP
Yii中使用PHPExcel导出Excel的方法
Dec 26 PHP
Smarty最简单实现列表奇偶变色的方法
Jul 01 PHP
非常实用的php验证码类
May 15 PHP
PHP基于单例模式编写PDO类的方法
Sep 13 PHP
ThinkPHP框架实现定时执行任务的两种方法分析
Sep 04 PHP
laravel实现查询最后执行的一条sql语句的方法
Oct 09 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
WinXP + Apache +PHP5 + MySQL + phpMyAdmin安装全功略
2006/07/09 PHP
php读取远程gzip压缩网页的方法
2014/12/29 PHP
基于php的CMS中展示文章类实例分析
2015/06/18 PHP
PHP获取当前执行php文件名的代码
2017/03/02 PHP
PHP实现的链式队列结构示例
2017/09/15 PHP
JavaScript 对象的属性和方法4种不同的类型
2010/03/19 Javascript
菜鸟javascript基础资料整理3 正则
2010/12/06 Javascript
多个datatable共存造成多个表格的checkbox都被选中
2013/07/11 Javascript
getAsDataURL在Firefox7.0下无法预览本地图片的解决方法
2013/11/15 Javascript
解析Javascript小括号“()”的多义性
2013/12/03 Javascript
浅谈React 属性和状态的一些总结
2016/11/21 Javascript
AngularJs 常用的过滤器
2017/05/15 Javascript
基于react框架使用的一些细节要点的思考
2017/05/31 Javascript
浅谈JavaScript_DOM学习篇_图片切换小案例
2019/03/19 Javascript
vue实现搜索过滤效果
2019/05/28 Javascript
layui使用数据表格实现购物车功能
2019/07/26 Javascript
100行代码实现vue表单校验功能(小白自编)
2019/11/19 Javascript
微信小程序实现时间戳格式转换
2020/07/20 Javascript
python 中文字符串的处理实现代码
2009/10/25 Python
django认证系统实现自定义权限管理的方法
2018/07/16 Python
python绘制简单彩虹图
2018/11/19 Python
pandas把所有大于0的数设置为1的方法
2019/01/26 Python
浅谈Python3中strip()、lstrip()、rstrip()用法详解
2019/04/29 Python
Python实现的远程文件自动打包并下载功能示例
2019/07/12 Python
详解pyinstaller selenium python3 chrome打包问题
2019/10/18 Python
NumPy统计函数的实现方法
2020/01/21 Python
CSS书写规范、顺序和命名规则
2014/03/06 HTML / CSS
前端canvas动画如何转成mp4视频的方法
2019/06/17 HTML / CSS
Scholastic父母商店:儿童书籍
2017/01/01 全球购物
英国性能汽车零件和发动机配件在线:Maxpeedingrods
2019/11/05 全球购物
VC++笔试题
2014/10/13 面试题
前台接待的工作职责
2013/11/21 职场文书
预备党员思想汇报
2014/01/08 职场文书
旅游管理专业大学生职业规划书
2014/02/27 职场文书
建筑安全标语
2014/06/07 职场文书
2019关于实习生工作安排及待遇的管理方案!
2019/07/16 职场文书