ci 模型内调用模型导致的递归 栈溢出问题
定义ci model类。
class a_model{
public function __construct(){
$this->load()->model('b_model');
}
}
class b_model{
public function __construct(){
$this->load()->model('a_model');
}
}
这样调用会导致函数递归,并最终递归溢出。
请问如果想在a_model中调用其他model,有什么官方调用方法吗?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
看源码了。如果这样调用,指定会出现问题。然后折中的方式,再不改源码的情况下。不要在构造函数中调用。
你确定你没写错?
$this->load()->model('a_model');
==》$this->load->model('a_model')
???貌似CI的load不会重复加载的,如果这个model已经被load过了,下次调用的时候会直接返回$this的吧