PHP后臺(tái)上傳圖片

<?php
/*
    by 的雨
*/
date_default_timezone_set('Asia/Chongqing');
header("content-type:text/html;charset=utf-8");
//這是上傳圖片的類
class Updateclass
{
	public $pathall;
	public $picname;
	public function update($file,$kaiqi=false,$w=0,$H=0)
	{
		//return $file;die;
		foreach($file as $key=>$val)
		{
		$updatename="{$key}";
		}
		$file=$file;
		$name=$file[$updatename]['name']; //文件名稱
		$size=$file[$updatename]['size']; //文件大小
		$type=$file[$updatename]['type']; //文件類型
		$tmp_name=$file[$updatename]['tmp_name']; //文件臨時(shí)文件
		$error=$file[$updatename]['error']; //文件錯(cuò)誤
		if(($error))
		{
			switch($error)
			{
				case 1:
				$s="超過(guò)了配置的大小";
				break;
				case 2:
				$s="超過(guò)了表單的大小";
				break;
				case 3:
				$s="部分文件上傳";
				break;
				case 4:
				$s="沒(méi)有文件";
				break;
				case 6:
				$s="找不到臨時(shí)文件";
				break;
				case 7:
				$s="文件不可寫";
				break;
				case 8:
				$s="由于擴(kuò)展PHP程序中斷文件上傳";
				break;
			}
			$re='上傳的錯(cuò)誤提示';
			return $s.'>'.$re;
			
		}
		else
		{
			
			//判斷是否是數(shù)組中的類型
			$arr=array('p_w_picpath/jpeg','p_w_picpath/jpg','p_w_picpath/png','p_w_picpath/gif');
			if(!in_array($type,$arr))
			{
				$re='上傳的錯(cuò)誤提示';
				$s='上傳的格式不對(duì)';
				return $s.'>'.$re;
				exit;
			}
			//判斷是否是http post提交
			if(!is_uploaded_file($tmp_name))
			{
				$re='上傳的錯(cuò)誤提示';
				$s='此文件不是通過(guò)post提交';
				return $s.'>'.$re;
				exit;
			}
			else
			{
				//獲取真實(shí)的名字,以時(shí)間為命名
				$NAME=date('Ymd',time()).rand(0,999999999);
				$hou=explode('.',$name);
				$houzui=$hou[count($hou)-1];
				$p=date('Ym');
				
				$path='uploade/'.$p;
				$this->pathall=$path;
				$this->picname=$NAME.'.'.$houzui;
				if(!is_dir($path))
				{
					mkdir($path,0777,true);
					$path=$path.'/'.$NAME.'.'.$houzui;
					
					if(move_uploaded_file($tmp_name,$path))
					{
						if($kaiqi==true)
						{
							$ys=$this->yasuo($path,$w,$H);
						}
						if($kaiqi==true)
						{
						return $path.'*'.$ys."@";	
						}
						else
						{
							return $path.'*';
						}
						
						
					}
					else
					{
						return "上傳失敗";
					}
				}
				else
				{
					$path=$path.'/'.$NAME.'.'.$houzui;
					
					if(move_uploaded_file($tmp_name,$path))
					{
						if($kaiqi==true)
						{
							$yasuo=$this->yasuo($path,$w,$H);
						}
						
						///echo "<div style=\"width:400px\"><img width=\"400px\" src=\"$path\"></div>";
						if($kaiqi==true)
						{
						return $path.'*'.$ys."@";	
						}
						else
						{
							return $path.'*';
						}
						
					}
					else
					{
						return "上傳失敗";
					}
				}
				
			}
		}
		}

	public function yasuo($from,$W,$H){	
	$yasuo_path=$this->pathall.'/'.date('Ym');
	if(!is_dir($yasuo_path))
	{
		mkdir($yasuo_path,0777,true);
	}
	$from="$from";	
	list($width,$height,$p_w_picpathstype)=getp_w_picpathsize($from);    //獲得原來(lái)照片的寬,高,文件類型										
	$get_style=p_w_picpath_type_to_mime_type($p_w_picpathstype);          //這是獲取圖片類型 p_w_picpath/jpeg
	//等同于 $get_style=getp_w_picpathsize($from)[mine]; 								
	$p_w_picpathcreatefrom=str_replace('/','createfrom',$get_style); //替換成 p_w_picpathcreatefromjpeg										
	$p_w_picpathjpeg=str_replace('/',null,$get_style);    //替換成 p_w_picpathjpeg
	$yuanben_p_w_picpath=$p_w_picpathcreatefrom($from);  //p_w_picpathcreatefromjpeg()  由文件或 URL 創(chuàng)建一個(gè)新圖象,原來(lái)的圖片
	$yasuo_p_w_picpath=p_w_picpathcreatetruecolor($W,$H);  //這是創(chuàng)建一個(gè)新的畫布,存放目標(biāo)圖片
	p_w_picpathcopyresampled($yasuo_p_w_picpath,$yuanben_p_w_picpath,0,0,0,0,$W,$H,$width,$height); //p_w_picpathcopyresampled 重采樣拷貝部分圖像并調(diào)整大小
	//p_w_picpathcopyresampled(目標(biāo)圖象連接資源,源圖象連接資源,目標(biāo) X 坐標(biāo)點(diǎn),目標(biāo) Y 坐標(biāo)點(diǎn),源的 X 坐標(biāo)點(diǎn),源的 Y 坐標(biāo)點(diǎn),目標(biāo)寬度,目標(biāo)高度,源圖象的寬度,源圖象的高度);
	//header('content-type: $get_style');   //頭部輸出圖片的類型  header('Content-Type: p_w_picpath/jpeg');
	$p_w_picpathjpeg($yasuo_p_w_picpath,"$yasuo_path/".'yasuo'.$this->picname); //網(wǎng)頁(yè)中輸出的圖片類型,壓縮圖保存的位置
	return "$yasuo_path/".'yasuo'.$this->picname;
	p_w_picpathdestroy($yasuo_p_w_picpath);              //銷毀壓縮后的圖片
	p_w_picpathdestroy($yuanben_p_w_picpath);	//銷毀原來(lái)的圖片
	}	
}

?>

    PHP后臺(tái)上傳圖片加壓縮圖片,個(gè)人是新手,若有錯(cuò)誤,請(qǐng)多多包涵》

創(chuàng)新互聯(lián)從2013年成立,公司以網(wǎng)站設(shè)計(jì)、網(wǎng)站制作、系統(tǒng)開(kāi)發(fā)、網(wǎng)絡(luò)推廣、文化傳媒、企業(yè)宣傳、平面廣告設(shè)計(jì)等為主要業(yè)務(wù),適用行業(yè)近百種。服務(wù)企業(yè)客戶成百上千,涉及國(guó)內(nèi)多個(gè)省份客戶。擁有多年網(wǎng)站建設(shè)開(kāi)發(fā)經(jīng)驗(yàn)。為企業(yè)提供專業(yè)的網(wǎng)站建設(shè)、創(chuàng)意設(shè)計(jì)、宣傳推廣等服務(wù)。 通過(guò)專業(yè)的設(shè)計(jì)、獨(dú)特的風(fēng)格,為不同客戶提供各種風(fēng)格的特色服務(wù)。

網(wǎng)站名稱:PHP后臺(tái)上傳圖片
新聞來(lái)源:http://muchs.cn/article40/gdsseo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站、外貿(mào)網(wǎng)站建設(shè)、品牌網(wǎng)站設(shè)計(jì)網(wǎng)站排名、網(wǎng)站內(nèi)鏈微信小程序

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站制作