PHP header() 函数
定义和用法
header()
函数用于向客户端发送原始的 HTTP 标头。
重要的是要注意,header()
函数必须在任何实际输出之前被调用!
实例
例子 1
发送三个 HTTP 标头以防止页面缓存:
<?php // 过去的日期 header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); header("Cache-Control: no-cache"); header("Pragma: no-cache"); ?> <html> <body> ... ...
注意:用户可能会设置一些选项来改变浏览器的默认缓存设置。通过发送上述的标头,您将覆盖这些设置并强制浏览器不进行缓存!
例子 2
提示用户保存生成的 PDF 文件(使用 Content-Disposition 头部来提供一个推荐的文件名,并强制浏览器显示保存对话框):
<?php header("Content-type:application/pdf"); // 它将被命名为 downloaded.pdf header("Content-Disposition:attachment;filename='downloaded.pdf'"); // PDF 源文件在 original.pdf 中 readfile("original.pdf"); ?> <html> <body> ... ...
语法
header(header, replace, http_response_code)
参数值
参数 | 描述 |
---|---|
header | 必需。指定要发送的标头字符串。 |
replace |
可选。指示标头是否应替换以前的类似标头或添加相同类型的新标头。 默认值为 TRUE(将替换)。FALSE 允许相同类型的多个标头。 |
http_response_code | 可选。强制将 HTTP 响应代码设置为指定的值。 |
技术细节
返回值: | Nothing |
---|---|
PHP 版本: | 4.0+ |
PHP 更新日志: | PHP 5.1.2: 现在可以防止同时发送多个标头。这是针对标头注入攻击的保护措施。 |