PHP文件上传—多文件上传的示例代码详解
PHP 支持同时上传多个文件并将他们的信息自动以数组的形式命名,想要实现这样的功能其实很简单,只需要在 HTML 表单中的对文件上传域使用和多选框与复选框的数组式提交语法。
那么在上一篇《PHP文件上传-move_uploaded_file()函数》中介绍了上传文件的函数,只是介绍了该函数的使用,以及单文件上传,本章将介绍多文件上传实现的方法!
在之前的文章《PHP综合运用数组函数-实现多文件上传》中也有所介绍了,在PHP中,当浏览器客户端提交过来的表单请求中包含上传的文件时,PHP 会将上传的文件先暂时存放临时目录中,然后将上传文件的信息存放在全局变量$_FLIES中, 所以我们只需要通过$_FILES数组获取上传文件的信息,然后对其进行相对应的处理操作就可以了!
下面的实例有 4个文件上传域,文件域的名字为 u_file[],提交后上传的文件信息都会被保存到$_FILES['u_file']中,生成多为数组,读取数组信息,并且上传文件,具体实例代码如下:
<html> <body> <!--上传文件表单--> <form method="post" action="" enctype="multipart/form-data"> <table id="up_table" border="1" bgcolor="f0f0f0"> <tbody id="auto"> <tr id="auto"> <td>上传文件</td> <td><input type="file" name="u_file[]"></td> </tr> <tr> <td>上传文件</td> <td><input name="u_file[]" type="file"></td> </tr> <tr> <td colspan="4"> <input type="submit" value="上传" > </td> </tr> </tbody> </table> </form> </body> </html> <?php header("Content-Type:text/html; charset=utf-8"); if(!empty($_FILES['u_file']['name'])){ //判断变量$_FILES是否为空 $file_name = $_FILES['u_file']['name']; //将上传文件名另存为数组 $file_tmp_name = $_FILES['u_file']['name']; //将上传文件的临时文件名存为数组 for($i=0;$i<count($file_name);$i++){ //循环上传文件 if($file_name[$i]!=""){ //判断上传文件名是否为空 move_uploaded_file($file_tmp_name[$i],$i.$file_name[$i]); echo "文件".$file_name[$i]."上传成功,更名为".$i.$file_name[$i]."<br>"; } } } ?>
输出结果如下:
总结:
关于文件系统,我们首先介绍了对文件的基本操作,然后学习了对目录的基本操作,接着我们学习了文件的高级处理技术,最后学习了 PHP 的文件上传技术。文件系统是开发了一个网站必不可少的组成部分,希望大家能够理解文件系统的重点知识点,掌握常用函数。下一专题我们不见不散!
以上是PHP文件上传-多文件上传的示例代码详解的详细内容。更多信息请关注PHP中文网其他相关文章!