1

最初の配列にはヘッダーが含まれ、もう 1 つの配列には入力されるデータが含まれます。ヘッダーを作成することはできますが、ヘッダーに従ってデータを入力する際に​​問題が発生します。

$columns =([0]=>firstname, [1]=>lastname, [2]=>class);

そしてデータ。

$data=(
array[0](['firstname']=>kevin, ['lastname']=>kaburu, ['class']=>1) 
array[1](['firstname']=>kevin, ['lastname']=>kaburu, ['class']=>1)
array[2](['firstname']=>kevin, ['lastname']=>kaburu, ['class']=>1)
array[3](['firstname']=>kevin, ['lastname']=>kaburu, ['class']=>1))

これをもっと明確にさせてください

問題は、最初のテーブルには列があり、もう一方のテーブルにはレコードがあり、それらが属する列を指す外部キーを持つ2つのテーブルがあることです。列は変化し続けるため、非常に動的です。このデータをテーブルに入力したい...利用可能なオプションを教えてください。

4

3 に答える 3

1

これをデータ宣言の後に挿入します。

$dataProvider = new CArrayDataProvider($data, array(
    //CDataProvider options, sort, etc..
));

render 呼び出しを変更して、dataProvider をビューに渡すことを含めます。

$this->render('view', array(
    'dataProvider' => $dataProvider,
));

ビューで:

<?php $this->widget('zii.widgets.grid.CGridView', array(
    'dataProvider'=>$dataProvider,
    // other CGridView options
)); ?>
于 2014-02-20T12:51:48.090 に答える
1

このリンクを参照してください:

http://www.yiiplayground.com/index.php?r=UiModule/dataview/gridViewArray

を使用してグリッドビューを作成できますCArrayDataProvider

このリンクには、要件と完全に一致するサンプルコードが含まれています。

Yii メソッドを使用しない場合:

<table>
<thead>
<tr>
<?php
  foreach($columns  as $s)
  {
     echo "<th>$s</th>";
   }
?>
</tr>
<tbody>
<?php
  foreach($data as $d)
  {
     echo "<tr>";
     foreach($d as $cols)
       echo "<td>".$cols."</td>";// hope all columns are present in second array.
     echo "</tr>";
  }
?>
</tbody>
</table>
于 2014-02-20T11:23:35.253 に答える