dousui6193 2019-07-18 17:21
浏览 69
已采纳

对于PHP / MySQL中的每3行

I'm retrieving data from MySQL which I'm listing on a page with HTML. I need each three throws from MySQL to be placed in a separate div when I'm looping through them.

My current code works but it prints all of the rows in a single div.

<div class="flex">
<?php 
    $get_plans = $database->sql("SELECT * FROM plans", array(), 'count');

    if ($get_plans != 0)
    {
        $get_plans = $database -> sql("SELECT * FROM plans", array(), 'rows');

        foreach ($get_plans as $plan)
        {
            $id = $plan['id'];
            $name = $plan['name'];

            echo '
                <div class="flex-33">
                    ID: '.$id.'
                    Name: '.$name.'
                </div>
            ';
        }
    }
?>
</div>

I would like the generated HTML to look like this: http://prntscr.com/ogx2bu

  • 写回答

2条回答 默认 最新

  • drbuowqe02101 2019-07-18 17:58
    关注

    I would use array_chunk():

    foreach (array_chunk($get_plans, 3) as $chunk) {
        echo '<div class="flex">';
        foreach ($chunk as $plan) {
            echo '<div class="flex-33">';
            echo 'ID: ' . $plan['id'] . '; ' . 'Name: ' . $plan['name'];
            echo '</div>';
        }
        echo '</div>';
    }
    

    The result will be like:

    <div class="flex">
        <div class="flex-33">ID: ID1; Name: Name1</div>
        <div class="flex-33">ID: ID2; Name: Name2</div>
        <div class="flex-33">ID: ID3; Name: Name3</div>
    </div>
    <div class="flex">
        <div class="flex-33">ID: ID4; Name: Name4</div>
        <div class="flex-33">ID: ID5; Name: Name5</div>
        <div class="flex-33">ID: ID6; Name: Name6</div>
    </div>
    <div class="flex">
        <div class="flex-33">ID: ID7; Name: Name7</div>
    </div>
    

    See demo on rextester.com

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 关于大棚监测的pcb板设计
  • ¥20 sim800c模块 at指令及平台
  • ¥15 stm32开发clion时遇到的编译问题
  • ¥15 lna设计 源简并电感型共源放大器
  • ¥15 如何用Labview在myRIO上做LCD显示?(语言-开发语言)
  • ¥15 Vue3地图和异步函数使用
  • ¥15 C++ yoloV5改写遇到的问题
  • ¥20 win11修改中文用户名路径
  • ¥15 win2012磁盘空间不足,c盘正常,d盘无法写入
  • ¥15 用土力学知识进行土坡稳定性分析与挡土墙设计