使用简单的文件下载方法,如下,文件可以正常下载却显示损坏(doc文件),上传正常,文件无损坏。
if ($file_dir.$filename ) {
//打开文件
$file = fopen ( $file_dir . $filename, "r" );
//输入文件标签
Header ( "Content-type: application/octet-stream" );
Header ( "Accept-Ranges: bytes" );
Header ( "Accept-Length: " . filesize ( $file_dir . $filename ) );
Header ( "Content-Disposition: attachment; filename=" . $filename );
ob_clean();
flush();
//输出文件内容
//读取文件内容并直接输出到浏览器
readfile( $file, filesize ( $file_dir . $filename ) );
fclose ( $file );
exit ();
} else {
echo "文件找不到";
exit ();
}