欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

强制下载

程序员文章站 2022-04-23 15:49:35
...

下载

强制下载通常默认不会下载的文件,如图片和html网页文件。用法很简单,后面两个参数没有必要设定,前两个是文件和文件名。

function force_download ($data, $name, $mimetype='', $filesize=false) {
// File size not set?
if ($filesize == false OR !is_numeric($filesize)) {
$filesize = strlen($data);
}

// Mimetype not set?
if (empty($mimetype)) {
$mimetype = 'application/octet-stream';
}

// Make sure there's not anything else left
ob_clean_all();

// Start sending headers
header("Pragma: public"); // required
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Cache-Control: private",false); // required for certain browsers
header("Content-Transfer-Encoding: binary");
header("Content-Type: " . $mimetype);
header("Content-Length: " . $filesize);
header("Content-Disposition: attachment; filename=\"" . $name . "\";" );

// Send data
echo $data;
die();
}

function ob_clean_all () {
$ob_active = ob_get_length () !== false;
while($ob_active) {
ob_end_clean();
$ob_active = ob_get_length () !== false;
}

return true;
}
?>