Printing foreach values in three different td in html [duplicate]

0

Good, people. I want to list my bank's data in an HTML table, but this in three columns <td> , when I popped this value, it would create another line <tr> .

Example:

<?php
                    foreach($produtos as $produto):
                ?>
                <td>
                    <div class="item">
                        <img src="produtos/imagens/<?=$produto['imagem']?>" class="imagem_item">
                        <div class="espaco_nome">
                            <span class="titulo_item"><?=$produto['nome']?></span>
                        </div>
                        <span class="preco_item">R$ <?=$produto['preco']?></span>
                    </div>
                </td>
                <?php
                    endforeach;
                ?>

In this case, it would print everything in the same row as the table. How do I create three columns and then create another row?

    
asked by anonymous 03.11.2015 / 01:44

1 answer

1

Only use logic:)

<?php
                $i = 1;
                foreach($produtos as $produto):
                  if($i == 1) {
                     echo "<tr>";
                  }
                ?>
                <td>
                    <div class="item">
                        <img src="produtos/imagens/<?=$produto['imagem']?>" class="imagem_item">
                        <div class="espaco_nome">
                            <span class="titulo_item"><?=$produto['nome']?></span>
                        </div>
                        <span class="preco_item">R$ <?=$produto['preco']?></span>
                    </div>
                </td>
                <?php
                    if($i == 3)
                        echo "</tr>";
                        $i = 1;
                    } else {
                        $i++;
                    }
                    endforeach;
                    if ($i != 1) { echo "</tr>"; }
                ?>
    
03.11.2015 / 12:53