Yii - How to get a values array from an Active Record

前端 未结 9 2560
佛祖请我去吃肉
佛祖请我去吃肉 2021-02-15 13:12

Using Yii, how can I get an array from an Active Record.

Say something like this:

array(\'foo\', \'bar\', \'lala\')

From something like thi

相关标签:
9条回答
  • 2021-02-15 13:34

    For yii2 , use:

    yii\helpers\ArrayHelper::map(MyModel::find()->all(), 'id', 'name'));
    

    or

    yii\helpers\ArrayHelper::getColumn(MyModel::find()->all(), 'name'));
    
    0 讨论(0)
  • 2021-02-15 13:35

    If i understand you correctly:

    $users = User::model()->findAll();
    $usersArr = CHtml::listData( $users, 'id' , 'name');
    print_r( $usersArr );
    

    It will give you array id => name

    Array {
        2 => 'someone',
        20 => 'kitty',
        102 => 'Marian',
        // ...
    }
    
    0 讨论(0)
  • 2021-02-15 13:35

    ActiveRecord class has an attribute called attributes. You can find its description here: http://www.yiiframework.com/doc/api/1.1/CActiveRecord#attributes-detail.

    In order to get all attributes in an array, use this: $var = $model->attributes;

    0 讨论(0)
提交回复
热议问题