PHP foreach() определяет 2 вещи?

#php

#php

Вопрос:

Я пытаюсь определить как [‘name’], так и [‘tmp_name’], но я понятия не имею, как это сделать?

Вот мой код:

  foreach ($_FILES['uploads']['name'] as $filename) {
   // Do stuff 
 }
 

Но для завершения и перемещения файла мне $_FILES['uploads']['tmp_name'] также нужно. Как мне определить оба? Я попытался найти его, но ничего не нашел.

Комментарии:

1. Как выглядит ваша структура массива?

Ответ №1:

Получите индекс из foreach и получите доступ к связанным записям:

 foreach ($_FILES['uploads']['name'] as $i => $filename) {

    $tmp_name = $_FILES["uploads"]["tmp_name"][$i];

}
 

Примечание: Не используйте нефильтрованное name для целевого имени файла. Это значение, предоставляемое клиентом, и может содержать что угодно.