日期:2014-05-17  浏览次数:20503 次

点击图片自动下载,请问代码如何写?
点击图片自动下载,请问代码如何写?

------解决方案--------------------
PHP code

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");