用户登录后 - 我希望我的所有模型都知道用户的ID。 (即使他们稍后被召唤)。
我考虑过使用静态变量,但它似乎不起作用
class Base_model extends CI_Model {
static protected $user_id;
}
class Log_in_model extends Base_model {
public function log_in(){
self::$user_id = 69;
}
}
class A_model extends Base_model {
public function do_A(){
echo self::$user_id;
}
}
class B_model extends Base_model {
public function do_B(){
echo self::$user_id;
}
}
答案 0 :(得分:0)
初始化会话
$this->load->library('session');
用户登录后,将userdata保存在会话userdata
中$newdata = array(
'username' => 'USERNAME',
'email' => 'EMAIL',
'user_id' => 'USERID',
'logged_in' => TRUE
);
$this->session->set_userdata('userdetails',$newdata); //setting data in session with a name userdetails
获取会话userdata ..
print_r($this->session->userdata('userdetails')); //get userdetails from session
从会话使用中销毁用户详细信息..
$this->session->unset_userdata('userdetails');
如果你想阅读更多关于会话的内容,那么请阅读..
http://ellislab.com/codeigniter/user-guide/libraries/sessions.html