- $obj_url=$this->db->query("select url from dowloads where id=$download_id")
- ->row();
- $url=$obj_url->url;
- $file =$_SERVER['DOCUMENT_ROOT'].$url;
- if(file_exists($file)){
- $filename= basename($url);
- //文件的类型
- header("Content-type: application/octet-stream");
- //下载显示的名字
- header("Content-Disposition: attachment; filename=".$filename);
- readfile($file);
- }else{
- echo "不存在";
- }
- exit();
//注意header前面不能有任何输出,否则下载的图片不会显示
利用CI框架下载
加载这个辅助函数用下面的代码加载这个辅助函数
- $this->load->helper('download');
下面的函数就有效:
force_download('
filename', '
data')
服务器产生能下载数据到你桌面的头. 这对你下载文件有帮助. 第一个参数是下载文件的文件名, 第二个参数是文件数据. Example:
- $data = 'Here is some text!';
- $name = 'mytext.txt';
- force_download($name, $data);
如果你想在你的服务器上下载一个存在文件,你需要将它读到一个字符串中:
- $data = file_get_contents("/path/to/photo.jpg"); // 读文件内容
- $name = 'myphoto.jpg';
- force_download($name, $data);
评论