使用AJAX和PHP上传多个文件

我正在尝试使用ajax和php上传多个文件。 JavaScript和Ajax代码如下;

$(document).on('click', '#UploadButton', function(e) { var form = new FormData(); var files = document.getElementsByClassName('receipts'); for (var i=0; i<files.length; i++) { form.append("files[receipt" + i + "]", files[i][0]); // add receipt to form } form.append('action', 'upload-receipts'); // specify action $.ajax({ url: 'handler.php', type: 'POST', data: form, cache: false, processData: false, contentType: false, success:function(data) { console.log(data); }, error: function(xhr, desc, err) { // I have some error handling logic here } }); }); 

PHP处理程序例程如下;

 $action = $_REQUEST['action']; switch($action) { case 'upload-receipts': $files = $_FILES['files']; $no_files = count($_FILES["files"]['name']); exit(json_encode(['size'=>$no_files])); /* for ($i = 0; $i false, 'message'=>'InvalidActionException'])); } 

我能够成功上传最多20个文件
我的问题是我无法上传超过20个文件。 每次我尝试上传超过20个文件时,只有前20个文件上传其余文件失败。 退出脚本如图所示仅表示
size = 20.有人可以帮助我理解并确定为什么会出现这种情况并解决这个问题。