Загрузка множественного изображения PHP с проверкой размера и типа

Я создаю форму для загрузки нескольких изображений с помощью PHP, и я хочу проверить тип и размер изображения. Но мой код не будет работать успешно. Как я могу исправить код?

HTML-входной файл (часть загрузки файла):

<input type="file" class="test" name="file_array[]"> <input type="file" class="test" name="file_array[]"> 

PHP-код

 <?php if (isset($_FILES['file_array'])) { $name_array = $_FILES['file_array']['name']; $tmp_name_array = $_FILES['file_array']['tmp_name']; $type_array = $_FILES['file_array']['type']; $size_array = $_FILES['file_array']['size']; $allowedTypes = array(IMAGETYPE_PNG, IMAGETYPE_JPEG, IMAGETYPE_GIF); $detectedType = exif_imagetype($tmp_name_array); $checktype = in_array($detectedType, $allowedTypes); } if ($checktype == false) { echo "type error"; echo "</br>"; } elseif ($size_array > 2097152) { echo "type error"; echo "</br>"; } else { for ($i = 0; $i < count($tmp_name_array); $i++) { if (move_uploaded_file( $tmp_name_array[$i], "upload/" . $name_array[$i] ) ) { echo $name_array[$i] . " upload is complete<br>"; } else { echo "function failed for " . $name_array[$i] . "<br>"; } } } ?>