php下载文件其实不是很难,不过一般是下载内网(服务器内部)的文件,那样直接写简单的下载程序即可,如果要下载远程的文件,比如文件地址是http://abc.com/xxxx.mp3,这样的第三方文件用强制下载,直接输出即可。当然下面的代码是实现简单是下载,并没有设置下载保存的位置。文件后缀等用函数直接调用就行了,我为了方便直接写死了。
function GetHttpfile($file,$name='musci') { $file = @ fopen($file,"r"); if (!$file) { return array('code'=>1,'msg'=>'文件异常'); } else { Header("Content-type: application/octet-stream"); header("Content-type: application/octet-stream"); header("Accept-Ranges: bytes"); header("Accept-Length:". filesize($file)); Header("Content-Disposition: attachment; filename=" .rand(1111,9999).$name. '.mp3'); while (!feof ($file)) { ob_clean(); echo fread($file,50000); } fclose ($file); } return array('code'=>1,'msg'=>'文件异常!'); }