Yii2模型公共属性

问题描述 投票:0回答:1

我有一个用户模型,其中一些属性是公共的,一些属性是数据库列属性

假设模型有N多个公共属性(例如Email和Surname)和列属性(例如Salt、confirmation_token)

我想循环访问模型中的所有属性,包括 public 属性db 列属性

php activerecord yii2 yii2-advanced-app
1个回答
3
投票

假设您的用户模型是一个

ActiveRecord
,您可以创建一个像这样的函数来检索公共属性和从数据库检索的属性的组合。

public function getAllAttributes() {
    return array_merge(
        parent::attributes(),
        \yii\base\Model::attributes()
    );
}

然后可以像

那样打印属性的值
$attributes = $model->getAllAttributes();
foreach ($attributes as $attribute) {
    echo $model->$attribute;
    echo "<br />";
}
© www.soinside.com 2019 - 2024. All rights reserved.