0
Codeigniter HMVCでこの問題が発生しています。Codeigniter HMVC - 関数内でライブラリを読み込めません。
'upload'や 'image_lib'のようなライブラリをロードしたい場合、クラス内のローカル関数にロードすると、そのインスタンスは常にnullになります。しかし、コンストラクタでオブジェクトをインスタンス化すると、ロードが成功し、ライブラリクラスの関数を呼び出すことができます。ここで
はコードです:
<?php
class Listed_items extends MX_Controller {
function __construct() {
parent::__construct();
$this->load->library('form_validation');
$this->load->library('upload'); // this works
$this->load->library('image_lib'); // this works
$this->form_validation->set_ci($this);
}
function do_upload($item_url) {
$submit = $this->input->post('submit', true);
if ($submit == "cancel") {
redirect('listed_items/create_item/'.$item_url);
} else if ($submit == "upload") {
$config['upload_path'] = './big_pics/';
$config['allowed_types'] = 'gif|jpg|png';
$config['max_size'] = 300;
$config['max_width'] = 3036;
$config['max_height'] = 1902;
$file_name = $this->site_security->generate_random_string(16);
$config['file_name'] = $file_name;
$this->load->library('upload', $config); // this calls on null
}
}
}
誰かがこの問題に役立つことができればそれは素晴らしいだろう。