日期:2014-05-17  浏览次数:20453 次

练习php文件下载,下载的图片打不开
<?php
$file_name="hello.jpg";
if(!file_exists($file_name))
{
echo "文件不存在";
return;
}
$fp=fopen($file_name,"r");
//获取下载文件大小
$file_size=filesize($file_name);
echo $file_size;
//返回的文件
header("Content-type: application/octet-stream");
//按照字节大小返回
header("Accept-Ranges: byte");
//返回文件大小
header("Accept-Length: $file_size");
//这里客户端的弹出对话框,对应的文件名
header("Content-Disposition: attachment;filename=".$file_name);


$buffer=1024;
//判断文件是否到结尾,结束
while(!feof($fp))
{
//echo "1111";
$file_data=fread($fp,$buffer);
//把部分数据回送给浏览器
echo $file_data;
}
fclose($fp);
?>


打不开图片文件的提示是:因为此文件可能已经损坏,或者过大

------解决方案--------------------
echo $file_size; //这句注释掉