Php codeigniter如何管理从母控制器到两个子控制器的对象
我为分页创建了两个控制器,为模型创建了一个控制器,为数据库创建了一个模型。2控制器扩展到其他控制器。像这样Php codeigniter如何管理从母控制器到两个子控制器的对象,php,codeigniter,controller,Php,Codeigniter,Controller,我为分页创建了两个控制器,为模型创建了一个控制器,为数据库创建了一个模型。2控制器扩展到其他控制器。像这样 class MY_Data extends CI_Controller{ public $layout; public $xe_member; public $member_srl; public $is_logged_in = FALSE; public $is_registerd = false; public $direct
class MY_Data extends CI_Controller{
public $layout;
public $xe_member;
public $member_srl;
public $is_logged_in = FALSE;
public $is_registerd = false;
public $director = array();
public $fighters = array();
public $logged;
function __construct(){
parent::__construct();
$this->load->model('member_login');
$this->load->model('db_log');
$this->layout = 'include/template';
}
function load_data(){
$this->xe_member = $this->member_login->member_check();
$this->member_srl = $this->xe_member['member_srl'];
$this->is_logged_in = $this->xe_member['is_logged'];
$this->is_registerd = $this->member_login->register_check
($this->member_srl);
if($this->is_registerd){
$this->director = $this->db->where('member_srl', $this->member_srl)->
limit(1)->get('fc_directors')->row();
$this->fighters = $this->db->where('member_srl', $this->member_srl)->
get('fc_fighters')->result();
}
}
}
登录
和主要
class Main extends MY_Data {
function __construct() {
parent::__construct();
}
function index(){
if(!$this->logged){
$data['main_contents'] = 'login/login_button';
$this->load->view($this->layout,$data);
}else {
$data['main_contents'] = 'main/main';
$this->load->view($this->layout,$data);
}
}
我知道这不是完美的代码,但是。。。
我想在这里做什么:对db_数据的第一次调用登录将拉动db存储在对象和主take对象来显示。但当使用main时,我总是从主控制器得到null 我只需将控制器对象用于其他控制器
我该怎么做呢?函数索引中的第一行不应该是
parent::index();
我想您应该扩展类登录中的索引函数
现在不执行父类中的索引,也不调用以下行:
$this->load_data()
其中包含
$this->member_login->member_check();
这能解决你的问题吗
$this->member_login->member_check();