PHP文件下载页简单实现
function get_extension($file){ return substr(strrchr($file, '.'), 1); } function get_name($path){ return substr(strrchr($path, '/'), 1); } function getImage($url,$fileName="") { $fbufsize = 8096; $ext = get_extension($url); $fileName = get_name($url); $type = array( 'gif' => 'image/gif', 'jpeg' => 'image/jpeg', 'jpg' => 'image/jpeg', 'jpe' => 'image/jpeg', 'png' => 'image/png', ); $imgType = isset($type[$ext])?$type[$ext]:die("类型不符"); header('Content-Description: File Transfer'); header('Expires: 0'); header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); header('Pragma: public'); header("Content-type: ".$imgType); header("Content-Transfer-Encoding: binary"); header('Content-Disposition: attachment; filename="'.$fileName.'"'); header("Content-Length:" . getimagesize($url)."\n\n" ); $fp = fopen($url,"r"); while(!feof($fp)) { print(fread($fp,$fbufsize)); flush(); ob_flush(); } fclose($fp); exit; } getImage("http://www.lpfrx.com/wp-content/themes/ProSense/images/rss-feed-icon.jpg");
搭配jquery前后台一起处理还是很给力的,例如图片
$("img).click(function(){
var path = $(this).attr("src");
location.href="test.php?path="+path;
})
测试过了
无论下载什么格式,改一下就行了,特此备份,以便查阅