Yii2模型简介

Yii2模型简介-字段

PHPer 2018-01-16 2478 0 0

字段字段是模型通过调用yii\base\Model::toArray() 生成的数组的单元名。默认情况下,字段名和属性名对应,但是你可以通过覆盖 fields() 和/或 yii\base\Model::extraFields() ...

字段

字段是模型通过调用yii\base\Model::toArray() 生成的数组的单元名。

默认情况下,字段名和属性名对应,但是你可以通过覆盖 fields() 和/或 yii\base\Model::extraFields() 方法来改变这种行为, 两个方法都返回一个字段定义列表,fields() 方法定义的字段是默认字段, 表示toArray()方法默认会返回这些字段。 extraFields()方法定义额外可用字段, 通过toArray()方法指定$expand参数来返回这些额外可用字段。 例如如下代码会返回fields()方法定义的所有字段和extraFields()方法定义的prettyName and fullAddress字段。

$array = $model->toArray([], ['prettyName', 'fullAddress']);

可通过覆盖 fields() 来增加、删除、重命名和重定义字段, fields() 方法返回值应为数组, 数组的键为字段名,数组的值为对应的可为属性名或匿名函数返回的字段定义对应的值。 特使情况下,如果字段名和属性定义名相同,可以省略数组键, 例如:

// 明确列出每个字段,特别用于你想确保数据表或模型
// 属性改变不会导致你的字段改变(保证后端的API兼容)。
public function fields()
{
    return [
        // 字段名和属性名相同
        'id',
        // 字段名为 "email",对应属性名为 "email_address"
        'email' => 'email_address',
        // 字段名为 "name", 值通过PHP代码返回
        'name' => function () {
            return $this->first_name . ' ' . $this->last_name;
        },
    ];
}
// 过滤掉一些字段,特别用于
// 你想继承父类实现并不想用一些敏感字段
public function fields()
{
    $fields = parent::fields();
    // 去掉一些包含敏感信息的字段
    unset($fields['auth_key'], $fields['password_hash'], $fields['password_reset_token']);
    return $fields;
}  

警告:由于模型的所有属性会被包含在导出数组,最好检查数据确保没包含敏感数据, 如果有敏感数据,应覆盖 fields() 方法过滤掉, 在上述列子中,我们选择过滤掉 auth_key, password_hash and password_reset_token。...

立即注册

更新于:2018-01-23 00:32:56
    您需要登录后才可以评论。 立即注册
    相关内容

    说说国产电影

    大陆电影《霸王别姬》到底如何?

    周星驰的喜剧之王

    真正的难忘,再说周星驰,《大话西游》两部曲

    不得不提的《英雄本色》,一帮演员和剧组太给力了,当然导演厉害了!

    2010年后的国产电影,看来除了《让子弹飞》其他都可以带过了?

    《芳华》这样露大腿合适吗?

    《国士无双》还是那么好看

    算是知道花木兰那么多成本都花在哪了

    评论《八佰》-为了照顾部分同学的逻辑思维能力,俺们通俗一把

    【豆瓣评论】评《中国合伙人》

    贺岁片 东成西就(1993)(国语) 精彩片段

    推荐内容

    分享几个好用的bt搜索bt资源下载网址网站

    影视电影剧集动漫综艺bt资源在线播放网址网站推荐分享

    全网最新bt磁力搜索引擎bt资源bt网站网址分享

    人气美女女优百度指数排行榜(波多野结衣,苍井空,三上悠亚,深田咏美,桥本有菜,北条...

    最强人造人深田咏美,业界的社交女王

    人生起起落落的三上悠亚,成名前的清纯风,怎么搭配出来的?

    业内第一大长腿,桥本有菜的腿究竟有多长

    波多野结衣,岛国业界著作最多的超级劳模

    日本AV界NO.1,苍井空是多少宅男的疯狂?

    美女女优视频混剪 This Girl-Laza Morgan

    怎样使用V2Ray代理和SSTap玩如魔兽世界/绝地求生/LOL台服/战地3/黑色沙漠/彩...

    sstap游戏代理教程 从此玩如魔兽世界/绝地求生/LOL台服/战地3/黑色沙漠/彩虹六...

    影视电影剧集动漫综艺bt资源在线播放网址网站推荐分享