<input type="file" name="file[]" multiple="multiple" />
<input type="submit" value="上传" />
</form>
<php
$upload_dir = 'uploads/'
if(isset($_FILES) &&!empty($_FILES)){
if(count($_FILES['file']['name'])>1){
for($i=0$i<count($_FILES['file']['name'])$i++){
$tmp_file=$_FILES['file']['tmp_name'][$i]
$file_name=$_FILES['file']['name'][$i]
$file_type=$_FILES['file']['type'][$i]
$file_size=$_FILES['file']['size'][$i]
$file_error=$_FILES['file']['error'][$i]
$upload_file=$upload_dir.$file_name
if(move_uploaded_file($tmp_file,$upload_file)){
echo "上传成功"
}else{
echo "上传失败"
}
}
}else{
echo "请上传多个文件"
}
}
?>
$File = $_FILES['filenames']foreach( $File['name'] as $Key => $FileName ) {
$FileNames = $FileName //上传的文件名
$FileTypes = $File['type'][$Key]//上传的文件类型
$FileSize = $File['size'][$Key]//上传的文件大小
$FileTmps = $File['tmp_name'][$Key] //上传的文件副本
//其他同理
//文件处理方式和单文件一样了
}
php上传后, $_FILES本身就是个数组, 单文件上传的时候是二维数组, 多文件上传后, 就是三维数组了
唯一的区别要做的, 就是用foreach循环遍历一次, 在循环内进行 *** 作, 即可!其他没是差别
html代码
<html><head>
<title></title>
</head>
<body>
<form enctype="multipart/form-data" action="do_upload.php" method="POST">
<!--表单中enctype="multipart/form-data"的意思,是设置表单的MIME编码。默认情况,这个编码格式是application/x-www-form-urlencoded,不能用于文件上传;只有使用了multipart/form- data,才能完整的传递文件数据,进行下面的 *** 作.-->
<fieldset>
<legend>图片上传</legend>
第一张图片<input name="userfile" type="file"><br>
第二张图片<input name="userfile" type="file"><br>
第三张图片<input name="userfile" type="file"><br>
第四张图片<input name="userfile" type="file"><br>
第五张图片<input name="userfile" type="file"><br>
<!--数组的形式传递数据-->
<input type="submit" value="Send File">
</fieldset>
</form>
</body>
</html>
2、do_upload.php页面,即处理多文件上传的页面:
<?php//全局数组$_FILES
//$_FILES['userfile']['tmp_name']文件在web服务器中临时存储的位置
//$_FILES['userfile']['name']用户系统中的文件名称
//$_FILES['userfile']['size']文件的字节大小
//$_FILES['userfile']['type']文件的MIME类型,text/plain,image/gif
//$_FILES['userfile']['error']与文件上载相关的错误代码
?>
<?php
//用for循环来获取传递的数据,是一个三维数据
for ($i=0$i<count($_FILES['userfile']['tmp_name'])$i++)
{
$upfile=$new_folder."/".$_FILES['userfile']['name'][$i]//此处可以根据自己的需要修改
if(move_uploaded_file($_FILES['userfile']['tmp_name'][$i],$upfile)){
echo "第".($i+1)."张图片上传成功<br>"
}
else{
echo "第".($i+1)."张图片上传不了<br>"
}
}
?>
3、运行截图
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)