【发布时间】:2011-02-22 22:19:36
【问题描述】:
我正在使用 Kohana 3 并使用名为 controller_Facebook 的中间控制器,它从 Controller_Template 扩展,然后从 Controller_Facebook 扩展 Controller_Home。我在 Controller_Facebook 中设置了两个属性并尝试在 Controller_Home 中使用它们,但它在那里不可用。它给出空值。我的代码类似于以下:
class Controller_Facebook extends Controller_Template{
public $template='template';
public $facebook;
public $session;
public function __contstruct(){
include_once(dirname(__FILE__)."/facebook_class.php");
global $facebook;
$facebook = new Facebook(array(
'appId' => 'xxxxxxxxxxx',
'secret' => 'xxxxxxxxxxxxxxxxxxxxxxxxxx',
'cookie' => true,
));
$this->facebook=$facebook;
$this->session = $facebook->getSession();
}
}
然后在 Home_Controller 中:
class Controller_Home extends Controller_Facebook{
public function __contstruct() {
parent::__contstruct();
}
public function action_index()
{
global $facebook;
$this->template->content=new View('home');
$this->template->selected='home'; var_dump($this->facebook);
$this->template->app_id='123';
var_dump($facebook);
$this->template->session=$this->session;
}
}
此外,如果我在父类中回显某些内容,则它不会输出该内容。它也在 facebook 中工作,这是否意味着我的父构造函数正在工作?我认为它正在工作。如果有人认为我做错了什么,请告诉我。
【问题讨论】:
标签: php model-view-controller kohana kohana-3