ホームページ  >  記事  >  バックエンド開発  >  PHPファイルアップロードページの簡単な実装

PHPファイルアップロードページの簡単な実装

WBOY
WBOYオリジナル
2016-06-13 13:20:21892ブラウズ

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

テスト済み

ダウンロードした形式に関係なく、簡単に参照できるように変更するだけです


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。