Для таблицы циклов в PHP

Я пытаюсь создать таблицу с php для цикла, которая перечисляет числа. Что-то вроде этого:

1 | 2 | 3 | 4 | 5
2 | 3 | 4 | 5 | 1
3 | 4 | 5 | 1 | 2
4 | 5 | 1 | 2 | 3
5 | 1 | 2 | 3 | 4

У меня все еще есть проблемы с этим, это на самом деле довольно просто, но я не смог его решить. Пока у меня есть следующий код:

<?php
echo "<table border='1'><br />";

for ($row = 0; $row < 5; $row ++) {
   echo "<tr>";

   for ($col = 1; $col <= 4; $col ++) {
        echo "<td>", ($col + ($row * 4)), "</td>";
   }

   echo "</tr>";
}

echo "</table>";
?>

Однако это порождает только следующее:

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

Спасибо, любая помощь будет оценена!

Ответ 1

<?php
echo "<table border='1'><br />";

for ($row = 0; $row < 5; $row ++) {
   echo "<tr>";

   for ($col = 0; $col < 5; $col ++) {
        echo "<td>", (($col + $row) % 5) + 1, "</td>";
   }

   echo "</tr>";
}

echo "</table>";
?>

Ответ 2

echo "<table border='1'><br />";
for ( $i = 0; $i < 5; $i++ ) {
    echo "<tr>";
    for ( $j = 0; $j < 5; $j++ ) {
        echo "<td>", ($j+$i)%5+1, "</td>";
    }
    echo "</tr>";
}
echo "</table>";

Ответ 3

Моя версия:

<?php
echo "<table border='1'><br />";
$i=1;
for ($row = 0; $row < 5; $row ++) {
  echo "<tr>";
  $cont = 0;
for ($col = $i; $col <= 5; $col ++) 
    {
     echo "<td>", ($col), "</td>";
     $cont++;
    }
if($cont < 5)
{
 for($col = 1; $col <= 5 - $cont; $col++)
 {
  echo "<td>", ($col), "</td>";
 }
 }

echo "</tr>";
$i++;
}

echo "</table>";

Кодепад: http://codepad.viper-7.com/JZogNY

Ответ 4

Моя версия

<?php
echo "<table border='1'><br />";

for ($row = 0; $row < 5; $row ++) {
   $k=$row;

   for ($col = 0; $col < 5; $col ++) {
        echo "<td>", (($k++)%5)+1, "</td>";
   }

   echo "</tr>";
}

echo "</table>";
?>

Ответ 5

<?php

    echo '<table border="1">';
    $i = 0;
    for($i =1; $i<=5; $i++){
        echo '<tr>
            <td>'.$i.'</td>';
            $x = 0;
            for($x=1; $x<=4; $x++){
                $y = $x + $i;
                $z = ($y>5) ? $y-5 : $y;
                echo '<td>'.$z.'</td>';
            }
        echo '</tr>';
    }

    echo '</table>';
?>