Yii学习第26课:AR的生命周期之实例化
1、AR(Active Record),中文解释要“活动记录”,“一个 AR 类关联一张数据表,每个 AR 对象对应表中的一行”。
2、以默认首页(@app/controllers/SiteController.php)为例,实例化contactForm类:
$object = new ContactForm();
我们在这里使用的ContactForm 继承的并非是“yii\db\ActiveRecord ”,而是“Model”但是我们还知道“Model 类也是更多高级模型如Active Record 活动记录的基类”,所以使用Model来查看RA的生命周期,效果是一样的。(其实是我有点懒,想用系统默认的代码,所以没有写,但是还是写了这么些文字来解释,呵呵)
3、打开@app/models/ContactForm.php,重构代码:
(1)public function __contruct(){}
(2)public function _init(){}
分别再“构造函数”和“init方法”中输入标记性代码:
4、重新访问默认首页,查看效果会发现实例化的生命周期流程是:
(1)先调用构造函数;
(2)在执行init()方法。
5、我们在追踪基类中“构造函数”的调用过程中,发现该构造函数会执行init()方法。所以假如我们修改__contruct()如下,会得到截然相反的结果:
public function __contruct(){
parent::__contruct();
echo 'step:1';
}
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:47
阅读量:46
阅读量:115
阅读量:120
阅读量:72