function filedown($file_name){ $file_name = iconv(utf-8,gb2312,$file_name); $file_path = e:/php/down/.$file_name; if(!file_exists($file_path)){ echo 文件不存在; return; } $fp = fopen($file_path,r); $file_size = filesize($file_path); header(content-type: application/octet-stream); header(accept-ranges: bytes); header(accept-length: $file_size); header(content-disposition: attachment; filename=.$file_name); $buffer = 1024; $file_count = 0; while(!feof($fp) && ($file_size - $file_count>0)){ $file_data = fread($fp,$buffer); $file_count += $buffer; echo $file_data; } fclose($fp); } $file_name=sai.png; filedown($file_name);
文件能够下载,但是图片打不开。以前能够打开。别的机器访问这个文件也能打开
回复讨论(解决方案) 首先检查是否有 bom 头
不过 别的机器访问这个文件也能打开 ,那么可能性不大
去除了bom头确实可以了。为什么以前没有问题,在别的机器上访问也没问题