PHP上传类还是比较常用的,于是我研究了一下PHP上传类,在这里拿出来和大家分享一下,希望对大家有用。PHP本身是一种简单而强大的语言。PHP语言拥有核心特性如强大的字符串和数组处理能力,同时极大的改进了对面向对象编程的支持(PHP5以上版本)。
#T#通过使用标准的和可选的扩展模块,PHP应用程序可以连接MySQL或Oracle等十几种数据库、绘图、创建PDF文件和创建解析XML文件。你也可以使用C语言来写自己的PHP扩展模块。例如,在已存在的代码库中提供一个PHP的接口函数。你也可以在Windows下运行PHP,使用COM控制其它诸如Word和Excel的Windows应用程序,或者使用ODBC来连接数据库。在国内,PHP曾经和微软的ASP并驾齐驱,是大家常用的网络编程语言。
PHP上传类代码:
- <?php
- /**
- *@packagemyFrameworkuploadclass
- *@Descriptionuploadclass
- *@Date2007-11-28
- *@authorantsnet
- *@copyrighthttp://www.antsnet.net
- *@Emailantsnet@163.com
- *@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;
- }
- }
- }