Yii2.0学习第27课:AR的生命周期之查询数据

 时间:2026-02-16 02:32:22

1、既然我们的标题是“查询数据”我们先创建一个查询,关于查询的操作可参考官网:

Yii2.0学习第27课:AR的生命周期之查询数据

Yii2.0学习第27课:AR的生命周期之查询数据

2、AR继承了yii\db\ActiveRecord,我们应该找到这个文件:

@vendor/yiisoft/yii2/db/ActiveRecord.php

Yii2.0学习第27课:AR的生命周期之查询数据

3、打开@app/models/UserMember.php,我们在该AR中重构构造函数:

public function __construct(){}

更具IDE的代码追踪功能,我们可以知道,该构造函数的父类是谁:

Yii2.0学习第27课:AR的生命周期之查询数据

4、然后我们顺藤摸瓜发现以下信息:

(1)class UserMember extends \yii\db\ActiveRecord

(2)class ActiveRecord extends BaseActiveRecord

(3)abstract class BaseActiveRecord extends Model implements ActiveRecordInterface

(4)class Model extends Component implements IteratorAggregate, ArrayAccess, Arrayable

(5)class Component extends Object

(6)class Object implements Configurable

而Object类中,确实有构造函数。

Yii2.0学习第27课:AR的生命周期之查询数据

Yii2.0学习第27课:AR的生命周期之查询数据

Yii2.0学习第27课:AR的生命周期之查询数据

Yii2.0学习第27课:AR的生命周期之查询数据

Yii2.0学习第27课:AR的生命周期之查询数据

Yii2.0学习第27课:AR的生命周期之查询数据

Yii2.0学习第27课:AR的生命周期之查询数据

5、同理我们可以追踪到“init()”及“afterFind()”覆盖的方法:

Yii2.0学习第27课:AR的生命周期之查询数据

Yii2.0学习第27课:AR的生命周期之查询数据

Yii2.0学习第27课:AR的生命周期之查询数据

Yii2.0学习第27课:AR的生命周期之查询数据

6、接下来我们分别看一下,系统对这三种过程的解释:

(1)__construct

(2)init()

(3)afterFind()

Yii2.0学习第27课:AR的生命周期之查询数据

Yii2.0学习第27课:AR的生命周期之查询数据

Yii2.0学习第27课:AR的生命周期之查询数据

  • Yii2.0学习第21课:渲染视图
  • Yii2.0学习第15课:控制器之动作参数
  • Yii2.0学习第16课:模型(Models)之标签的学习
  • Yii2.0学习第19课:数据库字段映射
  • Yii2.0学习第24课:使用数据块创建TDK
  • 热门搜索
    母亲节的来历简介 人物简介 盐酸二甲双胍片减肥 幻世录1攻略 培训机构简介 该怎么过 月经不来怎么调理 苏州旅游攻略三日游 按摩减肥 搭配的英文