如何使用PHP数据循环在Html上创建表

prdp8dxp  于 2022-12-02  发布在  PHP
关注(0)|答案(3)|浏览(199)

我只想用PHP循环在HTML上创建一个表。所以,我尝试这样做:

<table id="tdesign">
    <thead>
        <tr>
            <th>No</th>
            <th>Nama</th>
            <th>Kelas</th>
        </tr>
    </thead>
    <tbody>
        <?php $no = 1; ?>
        <?php $kls = 10;?> 
        <?php for ($i=1; $i <= 10 ; $i++) :?>
        <tr>
            <td><?php echo $no++; ?></td>
    
            <td>Name <?php echo $i; ?></td> 
            <?php endfor; ?>
            
            <?php for ($j=10; $j >= 1 ; $j--) : ?>
            <td><?php echo "Class ". $j . "\n" ;?></td>
            <?php endfor; ?>
        </tr>
        

    </tbody>
            
</table>

但是,为什么输出会变成这样呢?

yhived7q

yhived7q1#

这是因为你有一个循环中的循环。
请尝试以下操作:

<table id="tdesign">
    <thead>
        <tr>
            <th>No</th>
            <th>Nama</th>
            <th>Kelas</th>
        </tr>
    </thead>
    <tbody>
        <?php $no = 1; ?>
        <?php $kls = 10;?> 
        <?php for ($i=1; $i <= 10 ; $i++) :?>
        <tr>
            <td><?php echo $no++; ?></td>
    
            <td>Name <?php echo $i; ?></td> 
            
            <td><?php echo "Class ". 10-$i . "\n" ;?></td>
        </tr>
        <?php endfor; ?>
    </tbody>
</table>
eagi6jfj

eagi6jfj2#

假设您确实需要两个嵌套循环。
您需要将endfor移动到循环的末尾,否则在第二个循环之前会有<tr>
所以

<table id="tdesign">
        <thead>
            <tr>
                <th>No</th>
                <th>Nama</th>
                <th>Kelas</th>
            </tr>
        </thead>
        <tbody>
            <?php $no = 1; ?>
            <?php $kls = 10;?> 

            <?php for ($i=1; $i <= 10 ; $i++) :?>
              <tr>
                <td><?php echo $no++; ?></td>        
                <td>Name <?php echo $i; ?></td> 
              
                
                <?php for ($j=10; $j >= 1 ; $j--) : ?>
                   <td><?php echo "Class ". $j . "\n" ;?></td>
                <?php endfor; ?>

           <?php endfor; ?>

            </tr>
        </tbody>
    </table>
cgvd09ve

cgvd09ve3#

假设您有一个如下所示的数组:

[0] => Array
    (
        [stud_id] => 1234
        [name] => John Doe
        [class] => Class 1
    )

[1] => Array
    (
        [stud_id] => 2345
        [name] => Jane Doe
        [class] => Class 2
    )

我的表循环将如下所示:

<table class="table table-striped table-hover">
            <thead>
                <tr>
                    <th>Student ID</th>
                    <th>Student Name</th>
                    <th>Class</th>
                </tr>
            </thead>
            <tbody>
                <?php
                foreach($array as $data) {
                ?>
                <tr>
                    <td><?=$data['stud_id']?></td>
                    <td><?=$data['name']?></td>
                    <td><?=$data['class']?></td>
                </tr>
                <?php } ?>
            </tbody>
        </table>

必须将tbody内容(tr,td)放入循环中

相关问题