PHP文件下载代码<?php
$file_name = "000.JPG";
$file_dir = "/PHP/uploads/";
if (!file_exists($file_dir."/".$file_name))
{ //检查文件是否存在
return false;
exit;
}
else
{
$file = fopen($file_dir."/".$file_name,"r"); // 打开文件
// 输入文件标签
header("Content-type: application/octet-stream");
header("Accept-Ranges: bytes");
header("Accept-Length: ".filesize($file_dir."/".$file_name));
header( 'Content-Transfer-Encoding: binary' );
header("Content-Disposition: attachment; filename=" .$file_name); //以真实文件名提供给浏览器下载
header('Pragma: no-cache');
header('Expires: 0');
//输出文件内容
echo fread($file,filesize($file_dir."/".$file_name));
fclose($file);
exit;
}
?>访问后,没有出现下载提示,而是把文件内容显示在IE里,形如:?JFIFHH?.ExifII*nv(1~2i?HHAdobe Photoshop 7.02004:12:29 17:21:01?0220悞718???:B(J?HH?JFIFHH Adobe_CMAdobed€ f€"?? 3!1AQa"q?憽盉#$R羈34r傃C%扴疳馽s5⒉?D揟dE拢t6襏鈋虺劽觰泱F'敜叴暷凿籁蹬斟鮒fv問Χ浦骣7GWgw嚄Х亲琪5!1AQaq"2亼”B#罵佯3$b醨倰CScs4?⒉?&5乱D揟?dEU6te怛硠糜u泱F敜叴暷凿籁蹬斟鮒fv問Χ浦骣'7GWgw嚄Х? ?螋?鄽P酠?)QI[-蒍d摳j軖I#缷+$??瞤RL憘攩?驲磙裔-&'鸰毣熝p=&鋉[?帏$Lns[嚎F忺嚣礸栦叫e墷5Y? 萸榻弓?慕囚煒謭苎.嶟蠣嬜~3*汦晸}I>- 魴[譗檹^-,遦昤觰'}n瑏飡F遟鎨Vo^陻7岟V鼑胅S箛叓i锵b猩薫8岯" ]k&錈燥?序話KU/抪?蹓J凱?€R匊{?[)B巨徴嶖w亵"輨4??蔼mO鰣詡?p?M﹎K赪8 酧j[R鰥笐妈篲挚扳 W??嬷\鏑^簏銡6鹶秭3X0??莬'z竣$穤??警u7嵋k祥vW檶瘳P璇.綗G裮煣毓+題?悄紦? ?f粇盵翌照鸩0軀77?6棶R薀[輀谱皷恭眎赑蓳&K'鲌?暌?莁羊鐵排?"糺弘?铺 ?肩{X讫'竭Alb齊甓Z銚[眖)热p踃殳v雘边‘?咵闃?m?e4e賔).蒸cR)饰穨咭d輲锊5宔???`杵$ 彋cc籿69!?=G?u鱺梠?r烳?€摖擆V]塳谁知道是哪里设置的问题啊??
$file_name = "000.JPG";
$file_dir = "/PHP/uploads/";
if (!file_exists($file_dir."/".$file_name))
{ //检查文件是否存在
return false;
exit;
}
else
{
$file = fopen($file_dir."/".$file_name,"r"); // 打开文件
// 输入文件标签
header("Content-type: application/octet-stream");
header("Accept-Ranges: bytes");
header("Accept-Length: ".filesize($file_dir."/".$file_name));
header( 'Content-Transfer-Encoding: binary' );
header("Content-Disposition: attachment; filename=" .$file_name); //以真实文件名提供给浏览器下载
header('Pragma: no-cache');
header('Expires: 0');
//输出文件内容
echo fread($file,filesize($file_dir."/".$file_name));
fclose($file);
exit;
}
?>访问后,没有出现下载提示,而是把文件内容显示在IE里,形如:?JFIFHH?.ExifII*nv(1~2i?HHAdobe Photoshop 7.02004:12:29 17:21:01?0220悞718???:B(J?HH?JFIFHH Adobe_CMAdobed€ f€"?? 3!1AQa"q?憽盉#$R羈34r傃C%扴疳馽s5⒉?D揟dE拢t6襏鈋虺劽觰泱F'敜叴暷凿籁蹬斟鮒fv問Χ浦骣7GWgw嚄Х亲琪5!1AQaq"2亼”B#罵佯3$b醨倰CScs4?⒉?&5乱D揟?dEU6te怛硠糜u泱F敜叴暷凿籁蹬斟鮒fv問Χ浦骣'7GWgw嚄Х? ?螋?鄽P酠?)QI[-蒍d摳j軖I#缷+$??瞤RL憘攩?驲磙裔-&'鸰毣熝p=&鋉[?帏$Lns[嚎F忺嚣礸栦叫e墷5Y? 萸榻弓?慕囚煒謭苎.嶟蠣嬜~3*汦晸}I>- 魴[譗檹^-,遦昤觰'}n瑏飡F遟鎨Vo^陻7岟V鼑胅S箛叓i锵b猩薫8岯" ]k&錈燥?序話KU/抪?蹓J凱?€R匊{?[)B巨徴嶖w亵"輨4??蔼mO鰣詡?p?M﹎K赪8 酧j[R鰥笐妈篲挚扳 W??嬷\鏑^簏銡6鹶秭3X0??莬'z竣$穤??警u7嵋k祥vW檶瘳P璇.綗G裮煣毓+題?悄紦? ?f粇盵翌照鸩0軀77?6棶R薀[輀谱皷恭眎赑蓳&K'鲌?暌?莁羊鐵排?"糺弘?铺 ?肩{X讫'竭Alb齊甓Z銚[眖)热p踃殳v雘边‘?咵闃?m?e4e賔).蒸cR)饰穨咭d輲锊5宔???`杵$ 彋cc籿69!?=G?u鱺梠?r烳?€摖擆V]塳谁知道是哪里设置的问题啊??
具体用法,请查下手册.
if($isImage)
{
header('Content-Disposition: inline; filename='.$fileName);
} else {
header('Content-Disposition: attachment; filename='.$fileName);
}
如:header("Content-type: image/png");