http协议
重定向
自动跳转
header("Location:https://www.baidu.com");
定时跳转
一段时间后,网站自动跳转到指定页面。
header("Refresh:2; url=http://www.baidu.com");
设置编码方式
设置文字的编码方式为utf-8
header("context-type:text/html;charset=utf-8");
禁用缓存
header("Cache-control:no");
header("Expires:-1");
header("Pragma:no-cache");
http综合利用–文件下载
文件:1、文本文件(.txt); 2、二进制文件(图片、视频、音频)
function downFile($fileName, $file_sub_dir)
{
//低版本需要将中文文件名utf-8转换成gb2312,否则找不到文件
$fileName = iconv("utf-8","gb2312", $fileName);
//绝对路径
$file_path = $_SERVER['DOCUMENT_ROOT'] . $file_sub_dir . $fileName;
if (!file_exists($file_path)) {
echo "文件不存在";
return;
}
//打开文件,返回句柄,r以只读的方式
$fp = fopen($file_path, "r");
//获取文件大小,单位是byte
$file_size = filesize($file_path);
//声明返回的是文件类型
header("Content-type:application/octet-stream");
//按照字节大小返回
header("Accept-Ranges:bytes");
//返回文件大小
header("Accept-Length:$file_size");
//客户端弹出对话框,对应的名字
header("Content-Disposition:attachment;filename=" . $fileName);
//向客户端回送数据
//每次发送的大小
$buffer = 1024;
//为了下载的安全,我们最好做一个文件直接读取计数器
$file_count = 0;
//判断文件是否结束
while (!feof($fp) && ($file_size - $file_count) > 0) {
$file_data = fread($fp, $buffer);
//把部分数据回送给浏览器
$file_count += $buffer;
echo $file_data;
}
//关闭文件
fclose($fp);
}
downFile("1.png","/down/");