Je veux obtenir une colonne spécifique de la table User dans yii2 en utilisant l'enregistrement actif ci-dessous est mon code
$model = User::findOne(['id' => 1]);
cela retournera toute la colonne de la table avec l'identifiant utilisateur égal à 1, mais supposons que je veux juste obtenir uniquement le nom d'utilisateur et l'email de cette colonne. `
$model = User::find('username','email')->where('id'=1)
Essaye ça:
$model = User::find()
->select('column1, column2')
->where(['id' => $id])
->one();
echo $model->column1;
Essayez simplement:
$model = User::find()->select(['username','email'])->where('id=1')->One();
OU
$model = User::find()->select(['username','email'])->where('id=:id', [ ':id' => 1 ])->One();
La deuxième façon est plus préférable.
$model = User::find()
->select(['column1', 'column2'])
->where(['id' => $id])
->one();
En bas la voie est correcte. mais les autres valeurs archivées retournent comme NULL.
$model = User::find()->select(['username','email'])->where('id=1')->One();
Le meilleur moyen consiste à utiliser les critères de cdb pour la requête.