在 yii2 documentation
中,我发现有一种方法可以将活动记录转换为数组。
Customer::find()->asArray()->all();
但我不能这样使用: -
Customer::findModel($id)->asArray();
我该怎么办?请帮忙
答案 0 :(得分:16)
您应该将asArray()
添加到ActiveQuery
,而不是ActiveRecord
的实例。
假设您的主键列名为id
,您应该将模型查找代码更改为:
Customer::find(['id' => $id])->asArray()->one();
答案 1 :(得分:14)
$model = Customer::find($id)->asArray()->one();
$model = Customer::find($id)->select('id,name')->asArray()->one();
$model = Customer::find($id)->select('id,name as full')->asArray()->one();
$model = Customer::find()->where(['email'=>$email])->asArray()->one();
$model = Customer::find($id)->asArray()->all();
答案 2 :(得分:1)
你可以使用
$model = Customer::findModel($id);
$model->attributes;