CodeIgniter, загрузка и настройка - PullRequest
1 голос
/ 21 февраля 2012

Я хочу настроить загрузку, используя /config/upload.php.Тем не менее, некоторые из моих элементов конфигурации будут отличаться в зависимости от ситуации.В большинстве случаев каталог загрузки устанавливается динамически (например, он включает в себя идентификатор пользователя, использует случайную папку и т. Д.).Иногда типы файлов, которые могут быть загружены, будут разными (например, только фотографии в одном случае, только видео в другом случае).

Могу ли я поместить общие элементы конфигурации в /config/upload.php и добавить/ переопределить некоторые вещи позже?Если да, то как?

1 Ответ

7 голосов
/ 21 февраля 2012

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

$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);

Вы потеряете все предопределенные элементы конфигурации, я в этом уверен, поэтому вам придется повторить эти

UPDATE

Посмотрев на это немного больше, это возможно. Если вы посмотрите на библиотеку Upload, внутри есть функции, в которых вы можете set некоторые переменные. Не существует set функций для всех, и не все они могут быть set функциями, которые вы можете использовать. Таким образом, вы могли бы сделать что-то вроде этого.

$this->load->library("Upload"); // loads upload library with predefined config items in config/upload.php

//to change upload path
$this->upload->set_upload_path("new location");
//CANNOT DO THIS BECAUSE ITS USED IN do_upload function you would need to extend the upload library and create your own set function.
$this->upload->set_filename("new filename");

$this->upload->do_upload();

Другие значения могут использоваться для установки значений

set_max_filesize
set_max_filename
set_max_width
set_max_height
set_allowed_types
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...