使用 CodeIgniter 上传多个文件 - 偏移错误

Multiple File Upload with CodeIgniter - Offset Error

我根本无法使用 PHP Codeigniter 上传多个文件。 它正在上传我选择的第一张图片,但对于其余的,它会产生 有偏移错误。

谁能赐教,我做错了什么?

查看文件:

<form method="POST" action="<?php echo base_url('upload/dosya_yukle'); ?>" enctype="multipart/form-data">

    <input type="file" name="dosya[]" multiple>
    <br><br>
    <button type="submit" name="submit">Yükle</button>
</form>

控制器方法:


    public function dosya_yukle () {

        $count = count($_FILES['dosya']['name']);

        for ($i=0; $i < $count; $i++) { 

            $_FILES['dosya']['name'] = $_FILES['dosya']['name'][$i];
            $_FILES['dosya']['type'] = $_FILES['dosya']['type'][$i];
            $_FILES['dosya']['tmp_name'] = $_FILES['dosya']['tmp_name'][$i];
            $_FILES['dosya']['error'] = $_FILES['dosya']['error'][$i];
            $_FILES['dosya']['size'] = $_FILES['dosya']['size'][$i];

            $config['upload_path'] = './assets/img';
            $config['allowed_types'] =  'gif|jpg|png';

            $this->load->library('upload', $config);

            $this->upload->do_upload('dosya');

        }
    }

错误我得到:

Severity: Notice

Message: Uninitialized string offset: 2

Filename: controllers/Upload.php

Line Number: 54

Backtrace:

File: C:\wamp64\www\ajquery\application\controllers\Upload.php Line: 54 Function: _error_handler

File: C:\wamp64\www\ajquery\index.php Line: 315 Function: require_once

更新控制器如下..

public function dosya_yukle () {

        $count = count($_FILES['dosya']['name']);
        $files = $_FILES;
        unset($_FILES);
        for ($i=0; $i < $count; $i++) { 

            $_FILES['dosya']['name'] = $files['dosya']['name'][$i];
            $_FILES['dosya']['type'] = $files['dosya']['type'][$i];
            $_FILES['dosya']['tmp_name'] = $files['dosya']['tmp_name'][$i];
            $_FILES['dosya']['error'] = $files['dosya']['error'][$i];
            $_FILES['dosya']['size'] = $files['dosya']['size'][$i];

            $config['upload_path'] = './assets/img';
            $config['allowed_types'] =  'gif|jpg|png';

            $this->load->library('upload', $config);

            $this->upload->do_upload('dosya');

        }
    }