我创建了一个名为“User”的模型,它有一个名为“entries”的方法,另一个名为“books”
我想将$ user_id参数传递给模型,以便在我的控制器中创建该类的实例。
我目前在控制器中调用模型的方式是:
$data1 = $this->user->entries($user_id);
$data2 = $this->user->books($user_id);
我想将user_id参数直接传递给构造函数,这样我每次都不必使用$ user_id参数
也许是这样的(我知道在这种情况下语法是错误的):
$this->load->model('user',$user_id);
$data['row1'] = $this->user->entries();
$data['row2'] = $this->user->books();
请原谅我对OOP的理解不足..我刚开关。 谢谢你的帮助
答案 0 :(得分:2)
您无法将变量传递给构造函数,但您可以创建一个方法来设置userID,然后使用它。
示例:
class user extends CI_Model{
var $user_id;
function __construct(){
parent::__construct();
}
function set_user_id($user_id){
$this->$user_id = $user_id;
}
}
然后在您的entries
和books
图书方法中,您可以使用$this->$user_id
,而无需再次传递它。
像这样:
function entries(){
$user_id = $this->user_id;
}