Загрузить 1 определенный индекс из массива изображений из POST без циклического перебора $ _FILES - в CodeIgniter - PullRequest
0 голосов
/ 05 ноября 2018

Я хочу загрузить 1 определенный индекс из массива изображений из POST? Из приведенных ниже данных, скажем, я хочу загрузить только индекс 2.

// $_FILES['image']
Array 
(
    [name] => Array
        (
            [1] => 2b.png
            [2] => 2c.png
        )

    [type] => Array
        (
            [1] => image/png
            [2] => image/png
        )

    [tmp_name] => Array
        (
            [1] => C:\xampp\tmp\php247F.tmp
            [2] => C:\xampp\tmp\php2480.tmp
        )

    [error] => Array
        (
            [1] => 0
            [2] => 0
        )

    [size] => Array
        (
            [1] => 244274
            [2] => 277569
        )

)

Пока я получил:

if ($this->upload->do_upload('image[2]'))
...

Но, очевидно, это не работает таким образом. есть идеи как?

У меня есть больший цикл перед изображениями, и мне нужно только выбрать 1 изображение за итерацию. Это будет большие накладные расходы, если я буду использовать другой цикл для выбора изображения.

1 Ответ

0 голосов
/ 05 ноября 2018

Вы можете попробовать это для загрузки нескольких файлов:

$index=2;
if(is_uploaded_file($_FILES['image']['tmp_name'][$index])){
    $_FILES['toupload']['name']     = $_FILES['image']['name'][$index];
    $_FILES['toupload']['type']     = $_FILES['image']['type'][$index];
    $_FILES['toupload']['error']     = $_FILES['image']['error'][$index];
    $_FILES['toupload']['size']     = $_FILES['image']['size'][$index];
    if ( $this->upload->do_upload('toupload')) {
        echo "Image uploaded!";
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...