我最新的问题是计算上传的文件。我已经使用count($_FILES)
完成了此操作,但这里有问题显示给我
它只显示3个文件,这真的很奇怪,因为我认为它完美无缺
但到了这一点。这是PHP中的代码,以及用HTML上传文件的代码。当你查看count函数时,你会看到我提到的文件名。在我的情况下它并不重要,因为即使我只键入count($_FILES)
它也不起作用。我也尝试使用var_dump($_FILES);
,但它只显示了1个文件,而不是更多。
$i = 0;
$target = "gallery/";
for($i=0; $i<=count($_FILES['ufile']); $i++) {
if(($_FILES['ufile']['type'][$i]== 'image/jpeg')
||($_FILES['ufile']['type'][$i]== 'image/gif')
||($_FILES['ufile']['type'][$i]== 'image/png')
&&($_FILES['ufile']['size'][$i]<5242880)
&&($_FILES['ufile']['error'][$i] == 0)) {
$image = $_FILES['ufile']["name"][$i];
$temp = explode(".", $_FILES['ufile']["name"][$i]);
$gallery_img = $i . '_' .round(microtime(true)) . '.' . end($temp) ; //gallery is ready
$final_gallery[$i] = $gallery_img;
$tmpFilePath = $_FILES['ufile']['tmp_name'][$i];
move_uploaded_file($tmpFilePath, $target . $gallery_img);
}
}
和HTML:
IMAGES TO GALLERY:<input name="ufile[]" type="file" id="ufile[]" multiple><br><br>
答案 0 :(得分:0)
你应该试试这个
lit
答案 1 :(得分:0)
type = file
会显示1,因为您只输入//count($_FILES) will be 2 in this case.
<form method="post" enctype="multipart/form-data">
<input name="ufile[]" type="file" id="ufile[]" multiple><br><br>
<input name="extrafile" type="file" id="udfile[]" multiple><br><br>
<input type="submit" name="submit" value="upload">
</form>
。如果您要添加另一个输入文件类型,则会显示2。
name
现在发布的每个文件输入都有5个元素,分别是type
,tmp_name
,error
,size
和count($_FILES['ufile'])
。因此,如果您执行count($_FILES['ufile']['name'])
,则会显示始终显示5。
因此,在这种情况下,计算选择上传的文件数量的正确答案是 ?>
<form method="post" enctype="multipart/form-data">
<input name="ufile[]" type="file" id="ufile[]" multiple><br><br>
<input type="submit" name="submit" value="upload">
</form>
public function orders(){
return $this->hasMany('\App\Orders');
}
答案 2 :(得分:-1)
试试这个
count($_FILES['ufile']['name'])
答案 3 :(得分:-1)
哥们!这应该对你有用
for($i=0; $i<=count($_FILES); $i++) {