Краткая версия:
Когда пользователь загружает файл с помощью формы, массив сохраняется в глобальной переменной $_FILES
. Например, при использовании:
<input type="file" name="myfiles0" />
глобальная переменная выглядит так:
$_FILES = [
'myfiles0' => [
'name' => 'image-1.jpg',
'type' => 'image/jpeg',
'tmp_name' => '[path-to]/tmp/php/phptiV897',
'error' => 0,
'size' => 92738,
],
]
В принципе, мне нужно знать, какой из ключей массива $_FILES['myfiles0']
всегда существует и (возможно) всегда установлен, независимо от того, как выглядят другие ключи или какой браузер используется. Не могли бы вы сказать мне, пожалуйста?
Пожалуйста, примите во внимание, что переменная $_FILES
может также содержать многомерные массивы для файлов, загружаемых с использованием записи массива, например:
<input type="file" name="myfiles1[demo][images][]" multiple />
<Ч />
Длинная версия:
Для моей реализации PSR-7 Загруженные файлы Мне нужно выполнить нормализацию списка загруженных файлов. Начальный список может быть предоставлен пользователем или может быть результатом стандартной загрузки файла с использованием формы, например, $_FILES
глобальная переменная. Для процесса нормализации мне нужно проверить наличие и «правильность» (возможно, неудачный выбор слова) одного из следующих стандартных ключей загрузки файлов:
name
type
tmp_name
error
size
В принципе, если в предоставленном списке загруженных файлов (который также может быть многомерным массивом) найден выбранный ключ (на данный момент я выбрал tmp_name
), то предполагается, что массив Элемент, к которому принадлежит ключ, является стандартным элементом массива загрузки файлов, содержащим приведенный выше список ключей. В противном случае, например если выбранный ключ не найден, предполагается, что соответствующий элемент массива является экземпляром UploadedFileInterface .
К сожалению, в случае стандартной загрузки файла я нигде не могу найти информацию о том, какой ключ (из приведенного выше списка) всегда существует и (возможно) всегда установлен в переменной $_FILES
, независимо от того, как остальные ключи списка выглядят, или какой браузер используется.
Буду признателен, если вы поможете мне в этом.
Спасибо.