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入门速成(2)
Oct 09 PHP
将CMYK颜色值和RGB颜色相互转换的PHP代码
Jul 28 PHP
php编写的抽奖程序中奖概率算法
May 14 PHP
twig里使用js变量的方法
Feb 05 PHP
php将文件夹打包成zip文件的简单实现方法
Oct 04 PHP
yii2 resetful 授权验证详解
May 18 PHP
PHP实现向关联数组指定的Key之前插入元素的方法
Jun 06 PHP
PHP实现深度优先搜索算法(DFS,Depth First Search)详解
Sep 16 PHP
php获取ajax的headers方法与内容实例
Dec 27 PHP
php获取微信基础接口凭证Access_token
Aug 23 PHP
php常用字符串查找函数strstr()与strpos()实例分析
Jun 21 PHP
Laravel的加密解密与哈希实例讲解
Mar 24 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加密解密字符串汇总
2015/04/26 PHP
Yii实现单用户博客系统文章详情页插入评论表单的方法
2015/12/28 PHP
使用 PHP Masked Package 屏蔽敏感数据的实现方法
2019/10/15 PHP
jquery 子窗口操作父窗口的代码
2009/09/21 Javascript
js 关于=+与+=日期函数使用说明(赋值运算符)
2011/11/15 Javascript
BootStrap Table 分页后重新搜索问题的解决办法
2016/08/08 Javascript
Extjs表单输入框异步校验的插件实现方法
2017/03/20 Javascript
JS操作时间 - UNIX时间戳的简单介绍(必看篇)
2017/08/16 Javascript
Vue学习笔记之表单输入控件绑定
2017/09/05 Javascript
详解Angular5 路由传参的3种方法
2018/04/28 Javascript
解决eclipse中没有js代码提示的问题
2018/10/10 Javascript
详解JavaScript原生封装ajax请求和Jquery中的ajax请求
2019/02/14 jQuery
Koa日志中间件封装开发详解
2019/03/09 Javascript
vue视频播放插件vue-video-player的具体使用方法
2019/11/08 Javascript
[01:08:43]DOTA2-DPC中国联赛定级赛 Phoenix vs DLG BO3第一场 1月9日
2021/03/11 DOTA
Python Mysql自动备份脚本
2008/07/14 Python
Python中的with...as用法介绍
2015/05/28 Python
win系统下为Python3.5安装flask-mongoengine 库
2016/12/20 Python
Python实现excel转sqlite的方法
2017/07/17 Python
python交互式图形编程实例(一)
2017/11/17 Python
关于反爬虫的一些简单总结
2017/12/13 Python
Python基于更相减损术实现求解最大公约数的方法
2018/04/04 Python
Python随机生成身份证号码及校验功能
2018/12/04 Python
基于h5py的使用及数据封装代码
2019/12/26 Python
html5 datalist标签使用示例(自动完成组件)
2014/05/04 HTML / CSS
苹果香港官方商城:Apple香港
2016/09/14 全球购物
英国最大的汽车配件在线商店:Euro Car Parts
2019/09/30 全球购物
linux面试题参考答案(8)
2015/08/11 面试题
介绍一下linux的文件系统
2015/10/06 面试题
教师找工作推荐信
2013/11/23 职场文书
大型营销活动计划书
2014/04/28 职场文书
典型事迹材料范文
2014/12/29 职场文书
服装区域经理岗位职责
2015/04/10 职场文书
小学数学教师研修感悟
2015/11/18 职场文书
2016年“我们的节日·重阳节”主题活动总结
2016/04/01 职场文书
初中生入团申请书范文(五篇)
2019/10/16 职场文书