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 相关文章推荐
smarty section简介与用法分析
Oct 03 PHP
PHP开发中常用的三个表单验证函数使用小结
Mar 03 PHP
php中突破基于HTTP_REFERER的防盗链措施(stream_context_create)
Mar 29 PHP
vs中通过剪切板循环来循环粘贴不同内容
Apr 30 PHP
php中实现精确设置session过期时间的方法
Jul 17 PHP
使用ob系列函数实现PHP网站页面静态化
Aug 13 PHP
PDO防注入原理分析以及注意事项
Feb 25 PHP
php安全配置记录和常见错误梳理(总结)
Mar 28 PHP
php处理静态页面:页面设置缓存时间实例
Jun 22 PHP
关于PHP中协程和阻塞的一些理解与思考
Aug 11 PHP
PHP创建XML接口示例
Jul 04 PHP
WordPress免插件实现面包屑导航的示例代码
Aug 20 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
浅谈使用 PHP 进行手机 APP 开发(API 接口开发)
2014/08/11 PHP
php检测图片主要颜色的方法
2015/07/01 PHP
解决PHPstudy Apache无法启动的问题【亲测有效】
2020/10/30 PHP
JavaScript中Object和Function的关系小结
2009/09/26 Javascript
JavaScript 打地鼠游戏代码说明
2010/10/12 Javascript
10款新鲜出炉的 jQuery 插件(Ajax 插件,有幻灯片、图片画廊、菜单等)
2011/06/08 Javascript
JavaScript基于ajax编辑信息用法实例
2015/07/15 Javascript
js实现带圆角的两级导航菜单效果代码
2015/08/24 Javascript
javascript动态获取登录时间和在线时长
2016/02/25 Javascript
基于MVC+EasyUI的web开发框架之使用云打印控件C-Lodop打印页面或套打报关运单信息
2016/08/29 Javascript
基于angular中的重要指令详解($eval,$parse和$compile)
2016/10/21 Javascript
Angular2-primeNG文件上传模块FileUpload使用详解
2017/01/14 Javascript
Vue计算属性的学习笔记
2017/03/22 Javascript
jQuery Datatable 多个查询条件自定义提交事件(推荐)
2017/08/24 jQuery
vue mintui-Loadmore结合实现下拉刷新和上拉加载示例
2017/10/12 Javascript
ES6使用Set数据结构实现数组的交集、并集、差集功能示例
2017/10/31 Javascript
vue 实现类似淘宝星级评分的示例
2018/03/01 Javascript
如何通过setTimeout理解JS运行机制详解
2019/03/23 Javascript
JavaScript通如何过RGraph实现动态仪表盘
2020/10/15 Javascript
js 实现碰撞检测的示例
2020/10/28 Javascript
uniapp微信小程序:key失效的解决方法
2021/01/20 Javascript
Python中使用装饰器和元编程实现结构体类实例
2015/01/28 Python
使用Python编写Linux系统守护进程实例
2015/02/03 Python
Python中的推导式使用详解
2015/06/03 Python
Django保护敏感信息的方法示例
2019/05/09 Python
Python获取浏览器窗口句柄过程解析
2020/07/25 Python
Python如何爬取b站热门视频并导入Excel
2020/08/10 Python
CSS3制作炫酷的下拉菜单及弹起式选单的实例分享
2016/05/17 HTML / CSS
在DELPHI中调用存储过程和使用内嵌SQL哪种方式更好
2016/11/22 面试题
红领巾心向党广播稿
2014/01/19 职场文书
感恩寄语大全
2014/04/11 职场文书
感恩祖国演讲稿
2014/09/09 职场文书
中学生旷课检讨书模板
2014/10/08 职场文书
教师节作文之小学四年级
2019/09/03 职场文书
用Python将GIF动图分解成多张静态图片
2021/06/11 Python
教你用Java在个人电脑上实现微信扫码支付
2021/06/13 Java/Android