PHP中上传多个文件的表单设计例子


Posted in PHP onNovember 19, 2014

多个文件上传和单独文件上传的处理方式是一样的,只需要在客户端多提供几个类型为“file”的输入表单,并指定不同的“name”属性值。例如,在下面的代码中,可以让用户同时选择三个本地文件一起上传给服务器,客户端的表单如下所示:

<html>

<head><title>多个文件上传表单</title></head>

<body>

<form action="mul_upload.php" method="post" enctype="multipart/form-data">

<input type="hidden" name="MAX_FILE_SIZE" value="1000000">

选择文件1:<input type="file" name='myfile[]'><br>

选择文件2:<input type="file" name='myfile[]'><br>

选择文件3:<input type="file" name='myfile[]'><br>

<input type="submit" value="上传文件">

</form>

</body>

</html>

在上面的代码中,将三个文件类型的表单以数组的形式组织在一起。当上面的表单教给PHP的脚本文件mul_upload.php时,在服务器端同样使用全局数组$_FILES存储所有上述文件的信息,但$_FILES由二维数组已经转变为三维数组,这样就可以存储多个上传文件的信息。在脚本文件mul_upload.php中,使用print_r()函数将$_FILES数组中的内容输出,代码如下所示:

<?php

//打印三维数组$_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数组的结构形式略有不同。通过这种方式可以支持更多数量的文件上传。

PHP 相关文章推荐
PHP COOKIE设置为浏览器进程
Jun 21 PHP
discuz的php防止sql注入函数
Jan 17 PHP
PHP内置的Math函数效率测试
Dec 01 PHP
php判断linux下程序问题实例
Jul 09 PHP
php获取网站百度快照日期的方法
Jul 29 PHP
最准确的php截取字符串长度函数
Oct 29 PHP
PHP设计模式之工厂模式与单例模式
Sep 28 PHP
PHP SFTP实现上传下载功能
Jul 26 PHP
thinkPHP框架实现多表查询的方法
Jun 14 PHP
PHP7新功能总结
Apr 14 PHP
PHP+iframe模拟Ajax上传文件功能示例
Jul 02 PHP
如何使用php生成zip压缩包
Apr 21 PHP
PHP中使用GD库创建圆形饼图的例子
Nov 19 #PHP
PHP图像处理之imagecreate、imagedestroy函数介绍
Nov 19 #PHP
PHP图像处理之使用imagecolorallocate()函数设置颜色例子
Nov 19 #PHP
PHP GD库生成图像的几个函数总结
Nov 19 #PHP
PHP中绘制图像的一些函数总结
Nov 19 #PHP
PHP中round()函数对浮点数进行四舍五入的方法
Nov 19 #PHP
PHP中创建图像并绘制文字的例子
Nov 19 #PHP
You might like
[EPIC] Larva vs Flash ZvT @ Crossing Field [2017-10-09]
2020/03/17 星际争霸
PHP使用DOMDocument类生成HTML实例(包含常见标签元素)
2014/06/25 PHP
php使用gzip压缩传输js和css文件的方法
2015/07/29 PHP
解读PHP中的垃圾回收机制
2015/08/10 PHP
实现WordPress主题侧边栏切换功能的PHP脚本详解
2015/12/14 PHP
PHP+JQuery+Ajax实现分页方法详解
2016/08/06 PHP
提高Laravel应用性能方法详解
2019/06/24 PHP
从零开始学习jQuery (十) jQueryUI常用功能实战
2011/02/23 Javascript
JS 自定义带默认值的函数
2011/07/21 Javascript
brook javascript框架介绍
2011/10/10 Javascript
JavaScript基本编码模式小结
2012/05/23 Javascript
单击复制文字兼容各浏览器的完美解决方案
2013/07/04 Javascript
JavaScript对象之深度克隆介绍
2014/12/08 Javascript
AngularJS指令中的绑定策略实例分析
2016/12/14 Javascript
浅谈angular2子组件的事件传递(任意组件事件传递)
2018/09/30 Javascript
Node.js从字符串生成文件流的实现方法
2019/08/18 Javascript
vue实现购物车小案例
2019/09/27 Javascript
[54:06]OG vs TNC 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
python使用pil生成图片验证码的方法
2015/05/08 Python
Python中的rjust()方法使用详解
2015/05/19 Python
利用Python的Django框架生成PDF文件的教程
2015/07/22 Python
浅析Git版本控制器使用
2017/12/10 Python
python检测空间储存剩余大小和指定文件夹内存占用的实例
2018/06/11 Python
python Manager 之dict KeyError问题的解决
2019/12/21 Python
Python程序慢的重要原因
2020/09/04 Python
python xlsxwriter模块的使用
2020/12/24 Python
基于 HTML5 的 WebGL 3D 版俄罗斯方块的示例代码
2018/05/28 HTML / CSS
欧舒丹比利时官网:L’OCCITANE比利时
2017/04/25 全球购物
Expedia韩国官网:亚洲发展最快的在线旅游门户网站
2018/02/26 全球购物
康帕斯酒店预订:Compass Hospitality(支持中文)
2018/08/23 全球购物
创建省级文明单位实施方案
2014/02/27 职场文书
个人廉洁自律承诺书
2014/03/27 职场文书
日本读研:怎样写好一篇日本研究计划书?
2019/07/15 职场文书
2019年XX公司的晨会制度及流程!
2019/07/23 职场文书
100句人生哲理语录集锦:强者征服今天,懒汉坐等明天
2019/10/18 职场文书
微信小程序用户授权最佳实践指南
2021/05/08 Javascript