【开源中国 APP 全新上线】“动弹” 回归、集成大模型对话、畅读技术报告”
我在项目 目录下的core文件夹下建立 公共模型文件MY_Model.php 它继承CI_Model.php
这里面的构造函数是:
public function __construct(){ echo "MY_<br>"; }
然后我再models文件夹下建立一个 infomodel.php 它继承MY_Model
其构造函数是:
public function __construct() { echo 'info'; }
我在控制器里载入infomodel 为什么输出的是
MY_
info
呢?
Infomodel的构造函数不是把它的父控制器的构造函数 覆盖了吗,为什么还会输出MY_呢?
我试过 infomodel里的一般方法 是可以覆盖其父类的 对应的方法,但是执行 构造和析构 方法时总是先执行其父类方法,再执行自身方法,即使覆盖了父类的方法,它还是执行,我想知道这是为什么呢?
你可以看下 systerm下 Loader.php 下的_ci_load_class函数 和 _ci_init_class函数
core文件夹下建立 公共模型文件MY_Model.php 是会被自动加载并实例化的