Dans le yii2 documentation
J'ai trouvé qu'il existe un moyen de convertir l'enregistrement actif en tableau.
Customer::find()->asArray()->all();
Mais je ne peux pas utiliser comme ça: -
Customer::findModel($id)->asArray();
Comment dois-je faire? Veuillez aider
Vous devez ajouter asArray()
à ActiveQuery
, pas à l'instance de ActiveRecord
. En supposant que votre colonne de clé primaire nommée id
, vous devez changer votre code de recherche de modèle en:
Customer::find(['id' => $id])->asArray()->one();
$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();
vous pouvez utiliser
$model = Customer::findModel($id);
$model->attributes;