我是MVC概念的新手,对PHP来说有点新鲜。
问题1
在加载每个控制器之前,我想运行一个函数来检查数据库表是否存在。使用钩子是正确的方法吗?
问题2
在加载每个控制器之前,我想设置一些由db调用确定的变量。如何/在哪里应该在MVC(Kohana)设置中完成?
编辑关于Kohana v2.3.4
答案 0 :(得分:0)
问题1& 2,我会用钩子来做这些。钩子允许您在整个框架的启动和拆除阶段中的不同时间执行代码。在Kohana网站的钩子上查看documentation页面。 events documentation列出了您可以在整个框架中使用的所有事件。
问题3:您根本不必在控制器中使用构造函数。执行此操作的一个原因可能是,如果您有多个操作需要相同的对象实例和类似的操作,则可以在构造函数中创建它们一次。