【发布时间】:2017-01-05 09:07:54
【问题描述】:
我有一个用户模型,其中一些属性是公共的,一些是 db 列属性
假设模型有N个公共属性(例如Email和Surname)和列属性(例如Salt、confirmation_token)
我想遍历模型中的所有属性,包括 public attributes 和 db column attributes
【问题讨论】:
标签: activerecord yii2 yii2-advanced-app
我有一个用户模型,其中一些属性是公共的,一些是 db 列属性
假设模型有N个公共属性(例如Email和Surname)和列属性(例如Salt、confirmation_token)
我想遍历模型中的所有属性,包括 public attributes 和 db column attributes
【问题讨论】:
标签: activerecord yii2 yii2-advanced-app
假设您的 User 模型是 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 />";
}
【讨论】: