灰太狼
- 灰太狼 回答了问题 请问一下为什么一定要用一个 run 方法呢?
在使用的时候 类命名空间::widget([这里是参数]) 这个没问题知道吧。
然后 会调用基类的 widget(){
这个方法里面会有一句$widget->run() ,为什么是#$widget->run(),不是$this->run()呢。
}因为要执行调用者子类的run ,通过获取这个类给$config,然后创建了这个类的对象就可以调用run()了
总结:也就是基类里封装好里必须调用run();子类必须要有这个方法(也不是子类必须如果子类要实现业务逻辑就要写这个run()),其实基类已经实现了一个空的run();你不写也行啊。那就什么都不做。
如图,我把controll放到了 yii\base 里面就可以自动加载并且识别到类
- 灰太狼 发布了话题重复造轮子 Yii2