Size: a a a

2020 July 29

R

R1KO in phpGeeksJunior
Sedgar
Добрый вечер. Помогите пояснить вопрос, пожалуйста. В этом коде создается массив из 3х файлов - uploads[0,1,2] и все они одновременно прогоняются через forearch. Он в свою очередь идет по порядку, каждый раз присваивая ключ ([0,1,2]) переменной $error, так? Если так, то почему на значении [1], if пропускает $error?  https://ibb.co/BqH0Tjj
что значит " if пропускает $error" ?
источник

S

Sedgar in phpGeeksJunior
R1KO
что значит " if пропускает $error" ?
условие If выполняется если код ошибки "0", т. е. UPLOAD_ERR_OK, код ошибки 1 это UPLOAD_ERR_INI_SIZE.
источник

/

/bin/cat in phpGeeksJunior
=== можно попробовать
источник

R

R1KO in phpGeeksJunior
ну а если загрузить файлы в другом порядке?
источник

S

Sedgar in phpGeeksJunior
/bin/cat
=== можно попробовать
результат тот же
источник

S

Sedgar in phpGeeksJunior
R1KO
ну а если загрузить файлы в другом порядке?
Какой в этом смысл? Ключ массива же сам по себе присваивается с 0
источник

S

Sedgar in phpGeeksJunior
Вопрос немного не в этом. МОжет, я не верно понимаю порядок выполнения кода?
источник

R

R1KO in phpGeeksJunior
ну я что-то вопроса не понимаю
источник

R

R1KO in phpGeeksJunior
изначально я его понял как "почему на файле с индексом 1 у меня ошибка"
источник

S

Sedgar in phpGeeksJunior
R1KO
ну я что-то вопроса не понимаю
Никакой ошибки нет, все работает. Я пытаюсь понять почему
источник

R

R1KO in phpGeeksJunior
понять почему нет ошибки? потому что её нет
источник

R

R1KO in phpGeeksJunior
у тебя идет цикл по файлам ( по ошибкам в файлах)
источник

R

R1KO in phpGeeksJunior
и проверяется что если нет ошибки то загружаем файл
источник

S

Sedgar in phpGeeksJunior
R1KO
понять почему нет ошибки? потому что её нет
Спасибо! Сейчас попробую взглянуть под этим углом
источник

R

R1KO in phpGeeksJunior
выведи $_FILES
источник

R

R1KO in phpGeeksJunior
он просто по уебански выглядит
источник

R

R1KO in phpGeeksJunior
поэтому может быть не сразу ясно что оно такое
источник

S

Sedgar in phpGeeksJunior
Спасибо, разобрался.
foreach ($_FILES["uploads"]["error"] as $key => $error) {
       if ($error == UPLOAD_ERR_OK) {
в $error кладется не порядковый ключ массива uploads[], а порядковый номер $_FILES["uploads"]["error"], по этому он  0
источник

R

R1KO in phpGeeksJunior
в  $error код ошибки в $key  индекс файла
источник

S

Sedgar in phpGeeksJunior
Поэкспериментировал. Все действительно так, как вы говорите. foreach ($_FILES["uploads"]["error"] as $key => $error) { в этой строчке в $key кладется порядковый номер элемента массива, в $error код ошибки который соответствует этому элементу. Тогда, как например дложна выглядеть запись, если мне, например, нужно еще вытащить тип $_FILES? foreach ($_FILES["uploads"]["error"]["type"] as $key => $error => $type)?
источник