从模型内部访问控制器方法

enc*_*nce 8 methods codeigniter

如何从模型内部访问控制器方法?

Wes*_*rch 19

你没有.

虽然技术上可行,但如果您认为需要,则表明您的应用程序设计存在缺陷.

Controller层是您应用程序的主干,用于处理来自用户的请求,与Model层对话,以及将视图中的输出拼接在一起.您的模型层应该对Controller和View视而不见,但仅处理数据操作.这是对MVC模式的过度简化的解释(您可以在其他地方找到资源).

您的Codeigniter模型应该可以从任何控制器重复使用,而不依赖于它们.有许多解决方案可以解决您遇到的任何问题:您可以通过多种方式将数据传递到模型中,或者您可以使用调用模型方法的结果在Controller中执行操作.


Har*_*esh 5

你可以像这样使用:

class some_model extends Model
{
   function getController()
   {
   $controllerInstance = & get_instance();
   $controllerData = $controllerInstance->getData();
   }
}
Run Code Online (Sandbox Code Playgroud)