2016-12-28 86 views
0

我已經在我的模型下面的代碼:如何將數組元素名稱保存到數據庫?

public function getData($property) 
    { 
     $data = array(
      'a_4_1' => array(
       'RUB', 
       'USD', 
       'JPY', 
      ), 

     ); 
     return $data[$property]; 
    } 

在我看來:

<?= $form->labelEx($model, 'a_4_1', array('class' => 'col-xs-12 col-sm-2 control-label')) ?> 
    <div class="col-xs-12 col-sm-3"> 
     <?= $form->dropDownList($model, 'a_4_1',$model->getData('d_4_1'), array('class' => 'form-control')) ?> 
     <?= $form->error($model, 'a_4_1') ?> 
    </div> 

當我將它保存到數據庫中,它在整數格式保存數據(例如1,2, ..) 我需要將數組元素的名稱保存到數據庫(例如RUB,USD)(不是整數)。我該怎麼做?

+0

控制器代碼請 – sm1979

+0

它與控制器無關 – phpdev

回答

1

使用array_combine()更改數組的鍵值如下圖所示:

array_combine($模型 - >的getData( 'd_4_1'),$模型 - >的getData( 'd_4_1'))

<?= $form->labelEx($model, 'a_4_1', array('class' => 'col-xs-12 col-sm-2 control-label')) ?> 
    <div class="col-xs-12 col-sm-3"> 
     <?= $form->dropDownList($model, 'a_4_1',array_combine($model->getData('d_4_1'),$model->getData('d_4_1')), array('class' => 'form-control')) ?> 
     <?= $form->error($model, 'a_4_1') ?> 
</div> 
相關問題