2009-12-22 59 views
0

就Kohana而言,你可以给我一两个简短的句子吗?为什么我需要在我的控制器中使用constructor?经过大量的阅读,我似乎无法围绕constructor概念包裹我的小小脑袋。在这里寻找“外行人的条款”。 =)Kohana构造函数目的

编辑:问题涉及到的Kohana v2.3.4

回答

1

The Documentation

如果声明在你的控制器构造函数,例如加载一些资源,为整个控制器,你必须调用父构造函数。

public function __construct() 
{ 
    parent::__construct(); // This must be included 

    $this->db = Database::instance(); 
    $this->session = Session::instance(); 
} 

你可以在这个例子中看到,文档演示调用父类的构造,然后设置为类本身将引用数据库连接和会话的一些属性。

+0

你真的需要$这个吗?我只是进入这个框架的东西,它有时会让我在功能前面抛出多少东西。 – 2011-05-26 00:45:17

+0

@Kyle这是一个相当古老的问题。如果你刚刚进入Kohana,你可能使用Kohana 3.1。话虽如此,我会查看当前版本的相关文档。不要惊慌,Kohana一直是一个美丽的框架,你会喜欢与:) – Sampson 2011-05-26 13:34:55

0

你看到每个控制器扩展自父控制器。为了让父控制器运行或将其功能导入到控制器中,需要在控制器中创建一个构造函数。父母添加/设置控制器的功能行为。

希望是有道理的,谢谢:)