PHP上傳類還是比較常用的,於是我研究了一下PHP上傳類,在這裡拿出來和大家分享一下,希望對大家有用。PHP本身是一種簡單而強大的語言。PHP語言擁有核心特性如強大的字符串和數組處理能力,同時極大的改進了對面向對象編程的支持(PHP5以上版本)。
PHP上傳類代碼:
- <?php
- /**
- *@packagemyFrameworkuploadclass
- *@Descriptionuploadclass
- *@Date2007-11-28
- *@authorantsnet
- *@copyrighthttp://www.antsnet.net
- *@[email protected]
- *@Environment:Apache2.0.59+PHP5.2.5+mysql5.0
- *@version$Id:myFrame_Upload.php22008-02-2701:14:05ZAdministrator$
- */
- classmyFrame_UploadextendsmyFrame
- {
- var$uploadPath="uploadFile/";
- var$fullPath='';
- var$message;
- var$_debug=false;
- var$errorMessage='';
- function__construct($uploadPath='')
- {
- if($uploadPath!="")
- {
- $this->uploadPath=$uploadPath;
- }
- }
- /**
- *Batchupload
- *
- *@paramArray$arrayOutPut
- */
- publicfunctionformLocalBatch($keepSource=false,$arrayOutPut='')
- {
- $returnArray=array();
- if(sizeof($_FILES)==$arrayOutPut&&!$keepSource)
- {
- $i=0;
- foreach($_FILESas$index=>$value)
- {
- $returnArray[]=$this->fromLocal($value,$outPutName[$i]);
- $i++;
- }
- }else{
- foreach($_FILESas$index=>$value)
- {
- $returnArray[]=$this->fromLocal($value);
- }
- }
- return$returnArray;
- }
- /**
- *Uploadfileformlocal
- *
- *@paramArray|String$file_Area_Name
- *@paramArray|String$outPutName
- */
- publicfunctionfromLocal($VALUE,$outPutName='')
- {
- include_once(SERVERROOT.MYFRAME.'myFrame_Basic.php');
- /**
- *thefollowingforsingle
- */
- if($outPutName==''||$outPutName=="NULL")
- {
- $outPutName=date("YmdHis");
- }
- if($VALUE['error']>0)
- {
- switch($VALUE['errror'])
- {
- case'1':
- $this->errorMessage[]=$this->myFrameMessage['false']['file']['max'];
- returnfalse;
- break;
- case'2':
- $this->errorMessage[]=$this->myFrameMessage['false']['file']['maxDefined'];
- returnfalse;
- break;
- case'3':
- $this->errorMessage[]=$this->myFrameMessage['false']['file']['uncomplite'];
- returnfalse;
- break;
- case'4':
- $this->errorMessage[]=$this->myFrameMessage['false']['file']['unupload'];
- returnfalse;
- break;
- }
- }
- $fileName=$this->uploadPath.$outPutName.myFrame_Basic::getFileName($VALUE['name']).myFrame_Basic::getFileExt($VALUE['name']);
- if(is_uploaded_file($VALUE['tmp_name']))
- {
- if(!move_uploaded_file($VALUE['tmp_name'],$fileName))
- {
- $this->errorMessage[]=$this->myFrameMessage['false']['file']['move'];
- returnfalse;
- }else{
- return$fileName;
- }
- }
- }
- /**
- *Uploadfromnetwork
- *
- *@paramArray|String$url
- *@paramArray|String$outPutName
- *@paramBool$keepSource
- */
- publicfunctionfromNet($url,$outPutName='',$keepSource=false)
- {
- include_once(SERVERROOT.MYFRAME.'myFrame_Basic.php');
- if($outPutName=="")
- {
- $outPutName=date("YmdHis");
- }
- $fileType=myFrame_Basic::getFileExt($url);
- $fileName=$outPutName.$fileType;
- $contents=file_get_contents($url);
- $return=file_put_contents($this->uploadPath.$fileName,$contents);
- if($return){
- $this->fullPath=$this->uploadPath.$fileName;
- return$this->fullPath;
- }else{
- $this->errorMessage[]=$this->myFrameMessage['false']['file']['url'];
- returnfalse;
- }
- }
- }