强制下载

下载

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

<?php
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;
}
?>

时间: 2024-11-05 12:13:51

强制下载的相关文章

强制下载IIS站点所有文件的方法 强制下载TXT,INI等文本文件

配置完成后,访问站点内的所有文件都会被强制下载,提示下载窗口,包含asp,php,txt等所有的文件. 在制作XP主题下载站时,例如这样.bootskin的文件需要提供给用户下载,http://www1.xpcolor.com/upic/10723.bootskin 但在直接访问时,却提示无法打开页面,在翻查了大量资料后,开始设置. 解决方法是通过修改IIS里的HTTP头信息来实现,主要通过修改MIME信息来实现,MIME的教程请看本页:http://www.alixixi.com/progra

强制下载JPG或TXT等文件的4种方法

网站不仅仅只包含网页,有时你需要提供用户能下载的文件.将你的文件放到服务器上并在网页中附上链接只是第一步,你还需意识到HTTP响应的头文件影响文件下载. 在网上经常会碰到这类情况,当下载JPG或TXT等文件时,直接加上文件的链接,点击后并不会跳出选择保存弹出框,而是在网页浏览器中直接显示出来,解决这一问题的办法其实很简单,就是通过HTTP头文件来进行设置,本文中一共介绍了4种方法,只要合理运用就能随意控制网页文件下载方式了. 提示一:强制下载并控制文件名 在HTML中提供一个下载链接很简单: <

php强制下载文件函数_php技巧

本文实例为大家分享了php强制下载文件函数,供大家参考,具体内容如下 public function down() { $id = $this->_get('id'); $M = M("downloads"); $data=$M->where("id=$id and status=1")->find(); !$data && exit; $filename = iconv('UTF-8','GBK',$data['filename'

php简单实现文件或图片强制下载的方法_php技巧

本文实例讲述了php简单实现文件或图片强制下载的方法.分享给大家供大家参考,具体如下: //下载 function downregcaseAction() { $file="upload/regcase.jpg"; if(isfile($file)) { header("Content-Type: application/force-download"); header("Content-Disposition: attachment; filename=

如何强制下载?

问题描述 下东西要注册怎么强制下载? 解决方案 解决方案二:下东西要注册怎么强制下载?

从共享充电宝强制下载应用看,共享行业应如何保证安全?

共享经济的全面爆发,让所有人都瞠目结舌.似乎在共享的概念被广泛接受之后,所有生活中可见的东东都能被共享.从大的汽车.单车,到小的雨伞.充电宝等,几乎"无物不共享".但就在互联网行业喜气洋洋地迈入共享大时代时,接连传出的有关安全层面的问题,却给其泼了一头冷水. 近日,有网友反映在使用公共充电桩对手机充电后,手机中被强制下载了三款应用.而类似的事,早就不是第一次发生.通过这样的方式下载的应用,可以想象是怎样的"垃圾应用",甚至有可能是病毒应用.扣费应用,损害大众的个人信

IIS站点所有文件直接下载 强制下载_win服务器

http://s.jb51.net/upic/10723.bootskin 但在直接访问时,却提示无法打开页面,在翻查了大量资料后,开始设置. 解决方法是通过修改IIS里的HTTP头信息来实现,主要通过修改MIME信息来实现, 点击 MIME类型进行修改扩展名,现在为了实现所有的文件都提示下载,扩展类就输入了一个 * 字符,MIME类型本来是想填写application/octet-stream,想将所有的文件类型当做EXE来下载,但无效. 最后,在翻查了微软的官方资料得知,加上applicat

IE php关于强制下载文件的代码_javascript技巧

 作者:xling首先看 xls 文件的下载: //header("Cache-Control: public"); header('content-type:application/vnd.ms-excel'); header("Content-Disposition:attachment; filename=report.xls"); 如果不加第一句,会弹出 : Internet Explorer 无法下载 **.php (来自**网站).Internet Ex

使用PHP强制下载PDF文件示例

 当需要下载一个PDF文件时,如果不经处理会直接在浏览器里打开PDF文件,然后再需要通过另存为才能保存下载文件,下面通过PHP来实现直接下载PDF文件 我们有时会遇到这样一种情况,当需要下载一个PDF文件时,如果不经处理会直接在浏览器里打开PDF文件,然后再需要通过另存为才能保存下载文件.本文将通过PHP来实现直接下载PDF文件.    实现原理:我们仅仅只需要修改页面HTTP头,把Content-Type设置为force-download,问题即可解决.    请看代码:   代码如下: fo