PHP上传类实现单个和批量上传

开发 后端
PHP语言拥有强大的功能,受到了大部分人的喜爱,文章这里有PHP上传类的详细代码,希望对大家有帮助。

PHP上传类还是比较常用的,于是我研究了一下PHP上传类,在这里拿出来和大家分享一下,希望对大家有用。PHP本身是一种简单而强大的语言。PHP语言拥有核心特性如强大的字符串和数组处理能力,同时极大的改进了对面向对象编程的支持(PHP5以上版本)。

#T#通过使用标准的和可选的扩展模块,PHP应用程序可以连接MySQL或Oracle等十几种数据库、绘图、创建PDF文件和创建解析XML文件。你也可以使用C语言来写自己的PHP扩展模块。例如,在已存在的代码库中提供一个PHP的接口函数。你也可以在Windows下运行PHP,使用COM控制其它诸如Word和Excel的Windows应用程序,或者使用ODBC来连接数据库。在国内,PHP曾经和微软的ASP并驾齐驱,是大家常用的网络编程语言。 

PHP上传类代码:

  1. <?php 
  2. /**  
  3. *@packagemyFrameworkuploadclass  
  4. *@Descriptionuploadclass  
  5. *@Date2007-11-28  
  6. *@authorantsnet  
  7. *@copyrighthttp://www.antsnet.net  
  8. *@Emailantsnet@163.com  
  9. *@Environment:Apache2.0.59+PHP5.2.5+mysql5.0  
  10. *@version$Id:myFrame_Upload.php22008-02-2701:14:05ZAdministrator$  
  11. */  
  12. classmyFrame_UploadextendsmyFrame  
  13. {  
  14. var$uploadPath="uploadFile/";  
  15. var$fullPath='';  
  16. var$message;  
  17. var$_debug=false;  
  18. var$errorMessage='';  
  19.  
  20. function__construct($uploadPath='')  
  21. {  
  22. if($uploadPath!="")  
  23. {  
  24. $this->uploadPath=$uploadPath;  
  25. }  
  26. }  
  27. /**  
  28. *Batchupload  
  29. *  
  30. *@paramArray$arrayOutPut  
  31. */  
  32. publicfunctionformLocalBatch($keepSource=false,$arrayOutPut='')  
  33. {  
  34. $returnArray=array();  
  35. if(sizeof($_FILES)==$arrayOutPut&&!$keepSource)  
  36. {  
  37. $i=0;  
  38. foreach($_FILESas$index=>$value)  
  39. {  
  40. $returnArray[]=$this->fromLocal($value,$outPutName[$i]);  
  41. $i++;  
  42. }  
  43. }else{  
  44. foreach($_FILESas$index=>$value)  
  45. {  
  46. $returnArray[]=$this->fromLocal($value);  
  47. }  
  48. }  
  49. return$returnArray;  
  50. }  
  51. /**  
  52. *Uploadfileformlocal  
  53. *  
  54. *@paramArray|String$file_Area_Name  
  55. *@paramArray|String$outPutName  
  56. */  
  57. publicfunctionfromLocal($VALUE,$outPutName='')  
  58. {  
  59.  
  60. include_once(SERVERROOT.MYFRAME.'myFrame_Basic.php');  
  61. /**  
  62. *thefollowingforsingle  
  63. */  
  64. if($outPutName==''||$outPutName=="NULL")  
  65. {  
  66. $outPutName=date("YmdHis");  
  67. }  
  68. if($VALUE['error']>0)  
  69. {  
  70. switch($VALUE['errror'])  
  71. {  
  72. case'1':  
  73. $this->errorMessage[]=$this->myFrameMessage['false']['file']['max'];  
  74. returnfalse;  
  75. break;  
  76. case'2':  
  77. $this->errorMessage[]=$this->myFrameMessage['false']['file']['maxDefined'];  
  78. returnfalse;  
  79. break;  
  80. case'3':  
  81. $this->errorMessage[]=$this->myFrameMessage['false']['file']['uncomplite'];  
  82. returnfalse;  
  83. break;  
  84. case'4':  
  85. $this->errorMessage[]=$this->myFrameMessage['false']['file']['unupload'];  
  86. returnfalse;  
  87. break;  
  88.  
  89. }  
  90. }  
  91. $fileName=$this->uploadPath.$outPutName.myFrame_Basic::getFileName($VALUE['name']).myFrame_Basic::getFileExt($VALUE['name']);  
  92. if(is_uploaded_file($VALUE['tmp_name']))  
  93. {  
  94. if(!move_uploaded_file($VALUE['tmp_name'],$fileName))  
  95. {  
  96. $this->errorMessage[]=$this->myFrameMessage['false']['file']['move'];  
  97. returnfalse;  
  98. }else{  
  99. return$fileName;  
  100. }  
  101. }  
  102. }  
  103. /**  
  104. *Uploadfromnetwork  
  105. *  
  106. *@paramArray|String$url  
  107. *@paramArray|String$outPutName  
  108. *@paramBool$keepSource  
  109. */  
  110. publicfunctionfromNet($url,$outPutName='',$keepSource=false)  
  111. {  
  112. include_once(SERVERROOT.MYFRAME.'myFrame_Basic.php');  
  113. if($outPutName=="")  
  114. {  
  115. $outPutName=date("YmdHis");  
  116. }  
  117. $fileType=myFrame_Basic::getFileExt($url);  
  118. $fileName=$outPutName.$fileType;  
  119. $contents=file_get_contents($url);  
  120. $return=file_put_contents($this->uploadPath.$fileName,$contents);  
  121. if($return){  
  122. $this->fullPath=$this->uploadPath.$fileName;  
  123. return$this->fullPath;  
  124. }else{  
  125. $this->errorMessage[]=$this->myFrameMessage['false']['file']['url'];  
  126. returnfalse;  
  127. }  
  128. }  

 

责任编辑:田树 来源: 博客
相关推荐

2009-11-24 14:45:08

PHP批量上传图片

2009-11-16 09:53:56

PHP上传类

2009-11-16 10:40:02

PHP上传文件代码

2009-11-24 15:01:59

PHP通用文件上传类

2009-11-16 10:25:40

PHP上传文件

2009-11-24 13:15:35

Zend框架PHP上传文件

2009-11-24 15:50:09

PHP上传类uploa

2009-11-16 12:17:46

PHP上传文件类型

2009-05-18 10:23:43

文件上传PHPFILE函数

2009-11-16 14:15:51

PHP上传多个文件

2009-11-16 10:16:24

PHP文件上传

2009-06-26 13:46:13

Struts

2009-11-24 15:23:50

PHP文件上传进度条

2009-11-24 16:09:44

PHP Ajax

2009-11-16 13:04:04

PHP上传文件代码

2009-11-16 10:49:43

PHP上传文件代码

2009-11-16 13:27:20

PHP上传多张图片

2009-11-16 11:41:19

PHP上传大文件

2009-11-16 09:35:42

PHP上传

2009-11-17 17:17:50

PHP上传多个文件
点赞
收藏

51CTO技术栈公众号