отображать элементы массива в списке блоков / таблице

#php #html

#php #HTML

Вопрос:

У меня есть массив подсчитываемых чисел. Я хочу отобразить их в таблице или списке блоков с определенным количеством столбцов, скажем, 6, используя функцию php foreach and echo , чтобы я мог создавать это в цикле. Как я могу сделать это возможным с помощью css или html ??

Вот о чем я говорю

  ----- ----- ----- ----- ----- ----- 
|  1  |  2  |  3  |  4  |  5  |  6  |
 ----- ----- ----- ----- ----- ----- 
|  7  |  8  |  9  |  10 |  11 |  12 |
 ----- ----- ----- ----- ----- ----- 
|  13 |  14 |  15 |  16 |  17 |  18 |
 ----- ----- ----- ----- ----- ----- 
|  19 |  20 |  21 |  22 |  23 |  24 |
 ----- ----- ----- ----- ----- ----- 
  

Будет лучше, если это будет сделано с помощью настройки <table>

Комментарии:

1. Итак, какое решение вы ищете сейчас? PHP и таблица или список и CSS?

2. Да, <table> здесь правильный выбор. Вы уже пробовали писать какой-либо код?

3. привет @Gumbo, у меня есть <table> и </table> .. Я хочу заполнить внутри, я имею в виду, я хочу печатать / echo <tr> и <td> с помощью php. Я не знаю, как это сделать … : (

4. Итак, вопрос на самом деле не имеет ничего общего с CSS? Как использовать php для генерации table с заданными ограничениями?

5. @Matt Ball, я попробовал таблицу, а затем создал эхо-сигналы при условии, что число, имеющее остаток 1 при делении на 6, будет иметь дополнительный <tr> впереди, но не смог добиться 100% успеха … : (

Ответ №1:

  $elements = array_chunk($elements, 6);
 $html = '<table>';
 foreach($elements as $tr){
     $html .= '<tr>';
     foreach($tr as $td) $html .= '<td>'.$td.'</td>';
     $html .= '</tr>';
 }
 $html .= '</table>;
  

Комментарии:

1. echo будет после последней строки здесь echo $table;

Ответ №2:

попробуйте это

 <table>
    <tr>
        <?php
        $columns = 6;
        $i = 0;
        foreach($array as $item)
        {
            echo "<td>$item<td>";
            if($i   >= $columns)
            {
                $i = 0;
                echo "</tr><tr>";
            }
        }
        ?>
     </tr>
</table>