[英]how to count number of uploaded files in php
如何计算上传文件的数量? 这是我的表格:
<div id="dragAndDropFiles" class="uploadArea">
<h1>Drop Images Here</h1>
</div>
<form id="sfmFiler" class="sfmform" method="post" enctype="multipart/form-data">
<input type="file" name="file" id="file" multiple />
<input type="submit" name="submitHandler" id="submitHandler" class="buttonUpload" value="Upload">
</form>
这是上传文件的 php 片段:
if($_SERVER['REQUEST_METHOD'] == "POST") {
$tmpFilePath = $_FILES['file']['tmp_name'];
$newFilePath = $dir.'/' . $_FILES['file']['name'];
if(move_uploaded_file($tmpFilePath, $newFilePath)) {
echo "xxx files are successfully uploaded";
}
}
在此代码中,您只获得一个文件,这就是您获得计数结果 1 的原因。如果更改输入文件名,如“file []”
<input type="file" name="file[]" id="file" multiple />
然后使用下面的行代码,你会得到你想要的结果。 导致它需要一个数组来保存输入数据。
<?php echo count($_FILES['file']['name']); ?>
谢谢,我尝试在我的系统中得到结果。
朋友说得对。 上面的答案总是返回 1。
尝试:
echo count(array_filter($_FILES['file']['name']))
反正为我工作。
_t
使用array_filter
函数它可以工作
尝试
$countfiles = count(array_filter($_FILES['file']['name']));
如果为 NULL,则返回 0,如果上传了 1 个文件,则返回 1,依此类推。
您可以使用count
功能:
$no_files = count($_FILES);
如果没有选择文件并且您的文件数为 1,则可以在移动文件之前使用此行:
if (!empty($_FILES['file']['tmp_name'][0])) {
for($i=0;$i<$countfiles;$i++){
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.