Класс загрузки файла CodeIgniter - Инициализация другого файла конфигурации
Так что я немного погуглил, похоже, не могу найти ответ.
Из того, что я понимаю, этот код: $this->upload->initialize()
инициализирует класс загрузки файла CI, используя upload.php
Конфигурационный файл Что я хочу сделать, это использовать другой файл.
Я старался $this->upload->initialize('upload_other')
, но это не похоже на работу. Я знаю, что вы можете просто установить $config
массив в контроллере, но я пытаюсь избежать этого.
Это возможно? Я подхожу к этому неправильно?
2 ответа
Вы не можете инициализировать / переопределять такие конфигурации.
Вы можете инициализировать с помощью
$this->config->load('upload');
-- Some code Here --
$this->config->load('upload_other');
-- Some code Here --
ИЛИ вы можете сделать это массивом следующим образом.
$config['upload_path'] = './uploads/';
$config['allowed_types'] = 'gif|jpg|png';
$config['max_size'] = '100';
$config['max_width'] = '1024';
$config['max_height'] = '768';
$this->load->library('upload', $config);
// Alternately you can set preferences by calling the initialize function. Useful if you auto-load the class:
$this->upload->initialize($config);
Если вы хотите одновременно загружать другие файлы, вы можете изменить свой конфигурационный массив.
$config2['upload_path'] = './uploads/small/';
$config2['allowed_types'] = 'gif|jpg|png';
$config2['max_size'] = '100';
$config2['max_width'] = '100';
$config2['max_height'] = '100';
$this->load->library('upload', $config2);
// Alternately you can set
$this->upload->initialize($config2);
ОБНОВИТЬ
Вы можете указать свои общие данные в конфигурационном файле. сказать
config['width'] = '100';
config['width2'] = '100';
Теперь используйте в вашем контроллере как
config['width'] = $this->config->item('width');
config2['width'] = $this->config->item('width2');
Таким образом, вы можете повторно использовать те же настройки.
Почему вы пытаетесь избежать использования массива config? Другой способ - создать файл upload.php-config. Если вы хотите использовать разные конфигурации на разных контроллерах, вы всегда можете создать и загрузить полный пользовательский файл конфигурации: Codeigniter userguide Здесь вы можете создать несколько переменных с разными массивами upload-config.
Вы можете загрузить этот файл конфигурации в каждый контроллер и использовать эти конфигурации, используя метод initialize.