Code Igniter型号&图书馆

时间:2011-03-21 18:37:29

标签: codeigniter

CI中的

我创建了一个名为“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的理解不足..我刚开关。 谢谢你的帮助

1 个答案:

答案 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;
  }
}

然后在您的entriesbooks图书方法中,您可以使用$this->$user_id,而无需再次传递它。

像这样:

  function entries(){
    $user_id = $this->user_id;
  }