这篇文章主要介绍了php多个文件及图片上传的方法,以实例形式详细叙述了多文件上传的原理与实现技巧,非常实用,需要的朋友可以参考下
本文实例讲述了php多个文件及图片上传的方法。分享给大家供大家参考。具体实现方法如下:
多个文件上传是在单文件上传的基础上利用遍历数组的方式进行遍历表单数组然后把文件一个个上传到服务器上了,下面就来看一个简单多个文件上传实例
多个文件上传和单独文件上传的处理方式是一样的,只需要在客户端多提供几个类型为“file”的输入表单,并指定不同的“name”属性值。例如,在下面的代码中,可以让用户同时选择三个本地文件一起上传给服务器,客户端的表单如下所示:
复制代码 代码如下:
在上面的代码中,将三个文件类型的表单以数组的形式组织在一起。当上面的表单教给PHP的脚本文件mul_upload.php时,在服务器端同样使用全局数组$_FILES存储所有上述文件的信息,但$_FILES由二维数组已经转变为三维数组,这样就可以存储多个上传文件的信息。在脚本文件mul_upload.php中,使用print_r()函数将$_FILES数组中的内容输出,,代码如下所示:
复制代码 代码如下:
//打印三维数组$_FILES中的内容,查看一下存储上传文件的结构
print_r($_FILES);
?>
当选择三个本地文件提交后,输出结果如下所示
复制代码 代码如下:
Array(
[myfile]=>Array(
[name]=>Array( //$_FILES["myfile"]["name"]存储所有上传文件的内容
[0]=>Rav.ini //$_FILES["myfile"]["name"][0]第一个上传文件的名称
[1]=>msgsocm.log //$_FILES["myfile"]["name"][1]第二个上传文件的名称
[2]=>NOTEPAD.EXE) //$_FILES["myfile"]["name"][2]第三个上传文件的名称
[type]=>Array( //$_FILES["myfile"]["type"]存储所有上传文件的类型
[0]=>application/octet-stream //$_FILES["myfile"]["type"][0]第一个上传文件的类型
[1]=>application/octet-stream //$_FILES["myfile"]["type"][1]第二个上传文件的类型
[2]=>application/octet-stream) //$_FILES["myfile"]["type"][2]第三个上传文件的类型
[tmp_name]=>Array(
[0]=>C:/WINDOWS/Temp/phpAF.tmp
[1]=>C:/WINDOWS/Temp/phpB0.tmp
[2]=>C:/WINDOWS/Temp/phpB1.tmp)
[error]=>Array(
[0]=>0
[1]=>0
[2]=>0)
[size]=>Array(
[0]=>64
[1]=>1350
[2]=>66560))
)
通过输出$_FILES数组的值可以看到,处理多个文件的上传和单个文件上传时的情况一样的,只是$_FILES数组的结构形式略有不同。通过这种方式可以支持更多数量的文件上传。
例子如下:
复制代码 代码如下:

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

WebStorm Mac版
好用的JavaScript開發工具

MantisBT
Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

SecLists
SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器

Atom編輯器mac版下載
最受歡迎的的開源編輯器