用cake php动态显示表字段名称

时间:2013-06-30 14:37:25

标签: php mysql cakephp

我正在尝试显示表格中所有条目的人员。我有正确生成的条目列表作为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>

1 个答案:

答案 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 }