Activerecord Yii2模型公共属性

Activerecord Yii2模型公共属性,activerecord,yii2,yii2-advanced-app,Activerecord,Yii2,Yii2 Advanced App,我有一个用户模型,其中有些属性是公共的,有些属性是db列属性 假设模型有N个公共属性(例如Email和姓氏)和列属性(例如Salt、confirmation_token) 我想循环查看模型中的所有属性,包括公共属性和db列属性假设您的用户模型是ActiveRecord,您可以创建这样的函数来检索公共属性和从数据库检索的属性的组合 public function getAllAttributes() { return array_merge( parent::attribu

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

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


我想循环查看模型中的所有属性,包括公共属性db列属性

假设您的用户模型是
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 />";
}
$attributes=$model->getAllAttributes();
foreach($attributes作为$attribute){
echo$model->$attribute;
回声“
”; }
假设您的用户模型是一个
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 />";
}
$attributes=$model->getAllAttributes();
foreach($attributes作为$attribute){
echo$model->$attribute;
回声“
”; }