第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

求實(shí)現(xiàn)圖片上傳后自動(dòng)生成多張不同尺寸的圖片的實(shí)現(xiàn)思路謝謝了

求實(shí)現(xiàn)圖片上傳后自動(dòng)生成多張不同尺寸的圖片的實(shí)現(xiàn)思路謝謝了

PHP
create_time 2015-07-10 13:13:54
<?php?namespace common\uploads;/**?* 構(gòu)建上傳文件信息?* @return unknown?*/class Upload{public static function getFiles(){ $i=0;? ? $files = []; foreach($_FILES as $file){ if(is_string($file['name'])){ $files[$i]=$file; $i++; }elseif(is_array($file['name'])){ foreach($file['name'] as $key=>$val){ $files[$i]['name']=$file['name'][$key]; $files[$i]['type']=$file['type'][$key]; $files[$i]['tmp_name']=$file['tmp_name'][$key]; $files[$i]['error']=$file['error'][$key]; $files[$i]['size']=$file['size'][$key]; $i++; } } } return $files; }? ? public static function getExt($filename){ ? return strtolower(pathinfo($filename,PATHINFO_EXTENSION));}/**?* 產(chǎn)生唯一字符串?* @return string?*/public static function getUniName(){ return md5(uniqid(microtime(true),true));}/**?* 針對(duì)于單文件、多個(gè)單文件、多文件的上傳?* @param array $fileInfo?* @param string $path?* @param string $flag?* @param number $maxSize?* @param array $allowExt?* @return string?*/public static function uploadFile($fileInfo,$path='../web/uploads',$flag=true,$maxSize=1048576,$allowExt=array('jpeg','jpg','png','gif')){ //$flag=true; //$allowExt=array('jpeg','jpg','gif','png'); //$maxSize=1048576;//1M //判斷錯(cuò)誤號(hào)? ?? if($fileInfo['error']===UPLOAD_ERR_OK){ //檢測(cè)上傳得到小 if($fileInfo['size']>$maxSize){ $res['mes']=$fileInfo['name'].'上傳文件過大'; } $ext= ?self::getExt($fileInfo['name']); //檢測(cè)上傳文件的文件類型 if(!in_array($ext,$allowExt)){ $res['mes']=$fileInfo['name'].'非法文件類型'; } //檢測(cè)是否是真實(shí)的圖片類型 if($flag){ if(!getimagesize($fileInfo['tmp_name'])){ $res['mes']=$fileInfo['name'].'不是真實(shí)圖片類型'; } } //檢測(cè)文件是否是通過HTTP POST上傳上來的 if(!is_uploaded_file($fileInfo['tmp_name'])){ $res['mes']=$fileInfo['name'].'文件不是通過HTTP POST方式上傳上來的'; }// if($res) return $res; //$path='./uploads'; if(!file_exists($path)){ mkdir($path,0777,true); chmod($path,0777); } $uniName = self::getUniName(); $destination=$path.'/'.$uniName.'.'.$ext; if(!move_uploaded_file($fileInfo['tmp_name'],$destination)){ $res['mes']=$fileInfo['name'].'文件移動(dòng)失敗'; }? ? ? ?? $res['mes']=$fileInfo['name'].'上傳成功'; $res['dest']=$destination; return $res; }else{ //匹配錯(cuò)誤信息 switch ($fileInfo ['error']) { case 1 : $res['mes'] = '上傳文件超過了PHP配置文件中upload_max_filesize選項(xiàng)的值'; break; case 2 : $res['mes'] = '超過了表單MAX_FILE_SIZE限制的大小'; break; case 3 : $res['mes'] = '文件部分被上傳'; break; case 4 : $res['mes'] = '沒有選擇上傳文件'; break; case 6 : $res['mes'] = '沒有找到臨時(shí)目錄'; break; case 7 : case 8 : $res['mes'] = '系統(tǒng)錯(cuò)誤'; break; } return $res; }}}這是源碼不知道要在那里改= =
查看完整描述

1 回答

?
牽豬的倉鼠

TA貢獻(xiàn)3條經(jīng)驗(yàn) 獲得超0個(gè)贊

給你提供一種思路,在訪問時(shí)根據(jù)不同的參數(shù)來生成圖片,此處我給你一個(gè)簡(jiǎn)單的demo

class?Bo_Thumb{	private?function?__construct(){		$this->_enkey?=?'aAi{537hs%^$&((^$)'?.?__FILE__;	}	/**	?*?單例對(duì)象	?*?	?*?@return?Bo_Thumb	?*/	static?function?instance()	{		static?$var?=?null;		if?(empty($var))		{			require_once?G_ROOT??.?'/image.php';			$var?=?new?self();		}		return?$var;	}	function?url($fileid,?$size_w,?$size_h)	{		$params?=?array(				'fileid'?=>?$fileid,				'w'	=>?$size_w,				'h'	=>?$size_h,				ROUTE_DO_KEY?=>?'i',			);		$params['token']?=?G::identify(json_encode($params)?.?$this->_enkey.?G::fast_uuid(1));		$params[ROUTE_DO_KEY]?=?'i'?.?G::identify(md5($params['token'].?$this->_enkey));				return?url(ROUTE_DO_APP,?url_sfparams('index','thumb',$params));	}	function?file($fileid,?$size_w,?$size_h,?$token,?$secret)	{		$secret_token?=?'i'?.?G::identify(md5($token.?$this->_enkey));				if?(?$secret_token?!=?$secret?)		{			Bo_Throw::error(Bo_Throw::Invalid_Param,?"token無效.");		}		$extname?=?strtolower(?pathinfo($fileid,?PATHINFO_EXTENSION)?);		if?(?!in_array($extname,?array('jpg','png','gif','jpeg'))?)		{			Bo_Throw::error(Bo_Throw::Invalid_Param,?"fileid類型不匹配");		}		$fileid_new?=?rtrim($fileid,?".{$extname}")?.?"-{$size_w}x{$size_h}xc.{$extname}";		$file_dest?=?Bo_Fileupload::instance()->filepath($fileid_new);		if?(?is_file($file_dest)?)		{			return?Bo_Fileupload::instance()->fileurl($fileid_new);		}		$file_src?=?Bo_Fileupload::instance()->filepath($fileid);		if?(?!is_file($file_src)?)		{			Bo_Throw::error(Bo_Throw::Invalid_Param,?"fileid源不存在");		}		$image?=?Image::createFromFile($file_src,$extname);		$image->crop($size_w,?$size_h);		switch?($extname)?{			case?'jpg':			case?'jpeg':				$image->saveAsJpeg($file_dest);				break;			case?'png':				$image->saveAsPng($file_dest);				break;			case?'gif':				$image->saveAsGif($file_dest);				break;		}		$image->destroy();		return?Bo_Fileupload::instance()->fileurl($fileid_new);	}}


查看完整回答
反對(duì) 回復(fù) 2015-08-07
  • 1 回答
  • 1 關(guān)注
  • 1621 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)