CodeIgniter Загрузить файл с параметром данных

Есть ли какая-либо опция в CodeIgniter для загрузки файлов с параметрами, как в представлениях?

В мой контроллер я загружаю этот файл:

$path_to_logic = "extended_core/plugins/saphir_e-cms/be_extensions/$this->modul_id/package/logic.php";     
$logic = $this->CI->load->file($path_to_logic, true);

у меня есть array() в контроллере, который я бы передать в загруженный файл, как $data Вар во взглядах.

2 ответа

Решение

Вы должны добавить эту функцию в Loader учебный класс.

Для этого создайте новый файл с именем MY_Loader.php внутри application/core/ папка, следующим образом:

/**
* My Custom Loader
*/
class MY_Loader extends CI_Loader
{   
    function __construct()
    {
        parent::__construct();
    }

    /**
     * Custom File loader method
     *
     * @param  string  $path
     * @param  array   $vars
     * @param  bool    $return
     * @return void
     */
    public function file($path, $vars = array(), $return = FALSE)
    {
        return $this->_ci_load(array(
            '_ci_path' => $path,
            '_ci_vars' => $this->_ci_object_to_array($vars),
            '_ci_return' => $return
        ));
    }
}

Затем загрузите файл со значениями следующим образом:

$logic = $this->CI->load->file($path_to_logic, array('foo' => 'bar'), true);

Внутри файла вы будете иметь $foo,

Почему бы не назначить что-то вроде этого..

$this->CI->custom_array = array();
$this->CI->custom_array = // Load in array data via function etc..

А затем использовать это в представлении и т. Д.

Другие вопросы по тегам