下面是“分享PHP header函数使用教程”的完整攻略:
一、什么是header函数
header()
函数是一个实用的 PHP 函数,它向客户端发送原始的 HTTP 报头。此函数用于控制网页缓存信息,文件下载等内容。
二、header函数的语法
header() 函数的语法如下:
header(string, replace, http_response_code)
参数说明:
string
必需,规定要发送的 header 字符串。注意:请使用非缓存相关头部信息之前不得有任何输出。replace
可选,规定是否覆盖之前发送的相同类型的 header。默认是 True(即,替换之前发送的 header),若设置成 False,则不替换之前的 header。http_response_code
可选,为相应的 HTTP 状态码。例如可以传递 404 来表示没有找到页面等等。可以是一些http://
状态码。
三、如何使用header函数
1. 跳转到指定页面
一个最简单的使用 header()
函数的例子是将用户跳转到一个指定的页面。这里我们以跳转到百度搜索为例。
<?php
header('Location: https://www.baidu.com/s?wd=php', true, 301);
exit; // 跳转后需要 exit 结束程序
?>
说明:
Location
是要跳转到的页面。true
表示用新的 Location 替换之前的 Location。301
表示请求的页面已永久移动到了新的 Location。
注意:在使用 Location
时,必须放在任何其他输出之前。
2. 文件下载
下面是使用 header()
函数下载文件的实例代码:
<?php
// 告诉浏览器这是一个文件流格式的文件
header('Content-Type: application/octet-stream');
// 告诉浏览器返回的文件大小类型为字节
header('Accept-Ranges:bytes');
// 获取下载文件的大小
$fileSize = filesize('yourfile.zip');
//告诉浏览器返回的文件大小
header('Accept-Length:'.$fileSize);
// 告诉浏览器该文件的类型
header('Content-type: application/force-download');
// 告诉浏览器该文件的名字
header('Content-Disposition: attachment;filename="yourfile.zip"');
// 需要下载的文件名
$fileName = "yourfile.zip";
// 下载文件必须先清除缓冲区,否则会文件损坏
ob_clean();
ob_start();
// 读取发给请求的文件
readfile($fileName);
ob_flush();
flush();
?>
说明:
Content-Type
是HTTP头信息,定义文件格式,如果使用应用程序为Octet-Stream,应用程序可以处理所有文件格式。Accept-Ranges
告诉客户端浏览器可以使用分段下载。Accept-Length
是HTTP头信息,为浏览者提供下载文件的大小。Content-Disposition
为真实的文件名,告诉浏览器它是一个附件,用附加的方式(attachment)下载,用filename属性指定下载后默认的文件名。
希望这篇教程对你有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:分享PHP header函数使用教程 - Python技术站