0

请问我如何动态生成这种格式的数据数组。?我想要实现的是将此数据与我的下拉列表一起用作选项组数据

$data=array(
    'one'=>array(
        '1'=>'Satu',
        '2'=>'Dua',
        '3'=>'Tiga',
     ),
    'two'=>array(
        '1'=>'Sidji',
        '2'=>'Loro',
        '3'=>'Telu',
    ),
    'three'=>array(
        '1'=>'Hiji',
        '2'=>'Dua',
        '3'=>'Tilu',
     ),
);
4

2 回答 2

2

您可以使用groupField属性CHtml::listData()来生成这样的数组。

$data=CHtml::listData($models,'valueAttribute','labelAttribute','groupAttribute');

其中$models是模型数组。你可以直接把这个$data数组传给CHtml::dropDownList()yii会自动optgroup为你生成s

于 2013-03-08T16:49:49.420 回答
1

You can use this:

CMap::mergeArray(array($first array),$second array,....nth $array); 
于 2013-03-08T10:45:51.790 回答