2016-05-20 6 views
6

状態で特定の列の値を選択すると、私のコードは、これが同じユーザーIDでテーブルからすべての列を返しますは、私は以下のアクティブなレコードを使用してyii2でUserテーブルから特定の列を取得したいyii2

$model = User::findOne(['id' => 1]); 

です1、私はちょうど私がアクティブなレコードでクエリを書くのですか、この列からのみ、ユーザ名と電子メールを取得したいと、私は以下のコードを試してみましたが、それは文句を言わない

$model = User::find('username','email')->where('id'=1) 

このおかげで任意のヘルプをwork..`

答えて

8

これを試してみてください:

$model = User::find() 
      ->select('column1, column2') 
      ->where(['id' => $id]) 
      ->one(); 

echo $model->column1; 
1

単純に試してみてください。

$model = User::find()->select(['username','email'])->where('id=1')->One(); 

OR

$model = User::find()->select(['username','email'])->where('id=:id', [ ':id' => 1 ])->One(); 

を第二の方法がより好ましいです。

0
$model = User::find() 
     ->select(['column1', 'column2']) 
     ->where(['id' => $id]) 
     ->one(); 
関連する問題