如何在 codeigniter 中组合 'foreach' 和值?

How to combine 'foreach' and value in codeigniter?

我想使用 CodeIgniter 3 查看我网站中数据库的数据。有两种方法可以查看我在这个网站中的数据。首先是没有循环,我使用了这段代码:

<?php $s=$sched_stud->row();?>
<table class="table table-sm table-bordered">
                <tbody>
                    <tr>
                        <th scope="row">Full Name</th>
                        <td><?php echo $s->name;?></td>
                    </tr>
                    <tr>
                        <th scope="row">Level Enrolled</th>
                        <td><?php echo $s->level;?></td>
                    </tr>
                </tbody>
            </table>

第二个是使用 foreach,这是我的代码:

<tbody>
                        <?php
                        $a=1;
                        foreach ($sched_stud as $key) { ?>
                        <tr>
                            <th scope="row"><?php echo $a; $a++; ?>.</th>
                            <td>Tue, 8 Jan 2019</td>
                            <td>17.00 - 18.30</td>
                            <td><?php echo $key->room;?></td>
                            <td>Mrs. Adinda</td>
                            <td>Upcoming</td>
                        </tr>
                        <?php } ?>
                    </tbody>

但是有错误说:

Undefined property: mysqli::$room

我该如何解决这个问题?

在第一种方式中,您只获得一条记录 row()

所以在你的第二种 for 循环方式中你需要 result() 来获取多条记录

                  <tbody>
                        <?php
                        $a=1;
                        foreach ($sched_stud->result() as $key) { ?>
                        <tr>
                            <th scope="row"><?php echo $a; $a++; ?>.</th>
                            <td>Tue, 8 Jan 2019</td>
                            <td>17.00 - 18.30</td>
                            <td><?php echo $key->room;?></td>
                            <td>Mrs. Adinda</td>
                            <td>Upcoming</td>
                        </tr>
                        <?php } ?>
                    </tbody>