Вопрос:

Генерация динамических данных для HTML-таблицы с вертикальным и горизонтальным заголовком

php html html-table

403 просмотра

2 ответа

355 Репутация автора

Довольно просто создать динамическую таблицу с горизонтальными заголовками ИЛИ только с вертикальными заголовками. Но как я могу генерировать динамические данные для таблицы с ОБА и вертикальными и горизонтальными заголовками? Это вообще возможно?

Таблица:

<table>
    <tr>
        <th></th>
        <th scope="col">Monday</th>
        <th scope="col">Tuesday</th>
        <th scope="col">Wednesday</th>
        <th scope="col">Thursday</th>
        <th scope="col">Friday</th>
        <th scope="col">Saturday</th>
        <th scope="col">Sunday</th>
    </tr>
    <tr>
        <th scope="row">Week 1</th>
        <td>1</td>
        <td>1</td>
        <td>1</td>
        <td>1</td>
        <td>1</td>
        <td>1</td>
        <td>1</td>
    </tr>
    <tr>
        <th scope="row">Week 2</th>
        <td>2</td>
        <td>2</td>
        <td>2</td>
        <td>2</td>
        <td>2</td>
        <td>2</td>
        <td>2</td>
    </tr>
    <tr>
        <th scope="row">Week 3</th>
        <td>3</td>
        <td>3</td>
        <td>3</td>
        <td>3</td>
        <td>3</td>
        <td>3</td>
        <td>3</td>
    </tr>
    <tr>
        <th scope="row">Week 4</th>
        <td>4</td>
        <td>4</td>
        <td>4</td>
        <td>4</td>
        <td>4</td>
        <td>4</td>
        <td>4</td>
    </tr>
</table>
Автор: Sebastian Farham Источник Размещён: 25.03.2017 09:40

Ответы (2)


1 плюс

150 Репутация автора

Решение

Да, это легко сделать на PHP. Я сделал небольшой пример с использованием цикла for, чтобы дать вам более легкое представление о том, как это можно сделать

<table>
    <tr>
        <th></th>
        <th scope="col">Monday</th>
        <th scope="col">Tuesday</th>
        <th scope="col">Wednesday</th>
        <th scope="col">Thursday</th>
        <th scope="col">Friday</th>
        <th scope="col">Saturday</th>
        <th scope="col">Sunday</th>
    </tr>
    <?php
        // Create week row
        for ($week = 0; $week < 10; $week++) {
            echo "            <tr>";
            echo "                <th scope='row'>Week " . $week . "</th>";

            // Create day cells
            for ($day = 0; $day <= 7; $day++) {
                echo "                <td>" . $day . "</td>";
            }

            echo "            </tr>";
        }
    ?>
</table>
Автор: LFlare Размещён: 25.03.2017 09:46

1 плюс

6898 Репутация автора

Чтобы динамически генерировать таблицу по горизонтали и вертикали, вам понадобится 2 цикла: первый - для количества строк, а другой - для столбцов.

<?php

  $rows = 10;
  $cols = 20;

  echo '<table>';
  for($r=0; $r <= $rows; $c++){
    echo "<tr>";
    for($c=0; $c <= $cols; $r++){
      echo "<td>$r</td>";
    }
    echo "</tr>";
  }
  echo '</table>';

?>
Автор: Xorifelse Размещён: 25.03.2017 09:53
Вопросы из категории :
32x32