我正在尝试显示表格中所有条目的人员。我有正确生成的条目列表作为html表,但我想在表的顶部用表字段名称添加一行。我可以手动执行此操作但是必须有一种方法可以动态地执行此操作,以防我稍后添加或删除字段。
这是控制器功能
public function peopleDisplay() {
$this->set('people', $this->people->find('all'));
}
字段名称是否已在生成的数组中?如果是这样,我如何参考它们?如果不是我如何得到它们?
这是迄今为止的观点
<table>
<tr>
***were I want the row of field names to go***
</tr>
<?php foreach($people as $people): ?>
<tr>
<td>
<?php echo $people['people']['id'] ?>
</td>
<td>
<?php echo $people['people']['firstName'] ?>
</td>
<td>
<?php echo $people['people']['secondName'] ?>
</td>
</tr>
<?php endforeach; ?>
</table>
答案 0 :(得分:1)
列名是数组中的键。例如,'id','firstName'和'secondName'是列名。
另一种方法是将列名称作为控制器中的单独数组,然后在视图中输出。
$people = $this->People->find('all');
$colNames = array_keys($this->People->getColumnTypes());
$this->set(compact('colNames', 'people'));
然后在你看来:
foreach($colNames as $col){ //Output column names }
foreach($people as $person){ //Output people }