How to reference the instantiating class
Currently I have my controller instantiating a model class. Every time I create this class I need to set the logged in user's info in the model. I feel like 开发者_运维问答there is a more elegant way of doing this, but I'm not sure how to do it :-(
Here is an example of the code:
$leadModel = new Application_Model_DbTable_Leads;
$leadModel->user = $this->user;
What I would like to do from inside the model I'm creating is access the user using something like this (I know this only applies to classes that are extending other classes):
$user_id = $this::parent->user;
Thanks so much!
This is usually done using a constructor parameter:
class Application_Model_DbTable_Leads {
public function __construct($user) {
$this->user = $user;
}
}
...
$a = new Application_Model_DbTable_Leads($user);
There is no way to get a reference to the instantiating class.
精彩评论