Home  >  Article  >  Backend Development  >  PHP single file and multiple file upload examples_php examples

PHP single file and multiple file upload examples_php examples

韦小宝
韦小宝Original
2018-05-15 13:44:051825browse

File upload and multi-file upload in PHP are like a nightmare for PHP beginners who are just getting started. This article gives you a detailed analysis of PHP Code to implement single file upload and multiple file upload as well as problem solutions. If you don’t understand PHP file upload, please be optimistic! !

$_FILES When is an empty array?

When the form submission enctype is not equal to multipart/form-data, in php.iniConfiguration file, file_uploads = Off The size of the uploaded file> is specified in the php.ini configuration file When the maximum upload size is configured

As long as $_FILES is an empty array, the above problem may occur and must be fixed!

If you click the "Upload Button" immediately without selecting any file, $_FILES will be an array with elements, and each attribute in the element will be empty String, error attribute For 4

##Single file upload

$_FILES data structure

array(
  'filename' => array(
    'name' => 'xxx.png',
    'type' => 'image/png',
    'size' => 2548863,
    'tmp_name' => '/img/sdsdsd.png',
    'error' => 0
  )
)

Whether it is a

single file Or Multiple file upload, there will be 5 fixed attributes: name / size / type / tmp_name / error

Multiple file upload

Compared with single file upload, multiple

file upload processing is much more complicated. The two forms of multi-file upload on the front end

//name相同
<form method="post" enctype="multipart/form-data">
  <input type="file" name="wt[]"/>
  <input type="file" name="wt[]"/>
  <input type="submit" value="提交"/>
</form>

//name不同(简单点)
<form method="post" enctype="multipart/form-data">
  <input type="file" name="wt"/>
  <input type="file" name="mmt"/>
  <input type="submit" value="提交"/>
</form>

The back end

$_FILES The corresponding data structures are different

//name相同
array (size=1)
 &#39;wt&#39; => 
  array (size=5)
   &#39;name&#39; => 
    array (size=2)
     0 => string &#39;新建文本文档 (2).txt&#39; (length=26)
     1 => string &#39;新建文本文档.txt&#39; (length=22)
   &#39;type&#39; => 
    array (size=2)
     0 => string &#39;text/plain&#39; (length=10)
     1 => string &#39;text/plain&#39; (length=10)
   &#39;tmp_name&#39; => 
    array (size=2)
     0 => string &#39;C:\Windows\php1D64.tmp&#39; (length=22)
     1 => string &#39;C:\Windows\php1D65.tmp&#39; (length=22)
   &#39;error&#39; => 
    array (size=2)
     0 => int 0
     1 => int 0
   &#39;size&#39; => 
    array (size=2)
     0 => int 0
     1 => int 1820

//name不同(简单点)
array (size=2)
 &#39;wt&#39; => 
  array (size=5)
   &#39;name&#39; => string &#39;新建文本文档 (2).txt&#39; (length=26)
   &#39;type&#39; => string &#39;text/plain&#39; (length=10)
   &#39;tmp_name&#39; => string &#39;C:\Windows\php39C7.tmp&#39; (length=22)
   &#39;error&#39; => int 0
   &#39;size&#39; => int 0
 &#39;mmt&#39; => 
  array (size=5)
   &#39;name&#39; => string &#39;新建文本文档.txt&#39; (length=22)
   &#39;type&#39; => string &#39;text/plain&#39; (length=10)
   &#39;tmp_name&#39; => string &#39;C:\Windows\php39D8.tmp&#39; (length=22)
   &#39;error&#39; => int 0
   &#39;size&#39; => int 1820

Field Error purpose

Value: 1 The uploaded file exceeds the value limited by the upload_max_filesize option in php.ini.

Value: 2 The size of the uploaded file exceeds the value specified by the MAX_FILE_SIZE option in the HTML form.

Value: 3 The file was only partially uploaded.

Value: 4 No files were uploaded. Value: 5 The uploaded file size is 0.

The above is all the content of

PHP file upload, I hope it will be helpful to everyone! !

Related recommendations:

Perfect solution to PHP’s inability to upload large files

Example analysis of PHP single file and multiple file upload

A PHP file upload class sharing_php example

The above is the detailed content of PHP single file and multiple file upload examples_php examples. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn