TMS: Tabelle aus Array erzeugen

Hallo lasse über

<table>
<?
ksort($liste_dateien);
for($x=0;$x<sizeof($liste_dateien);$x++)
{
$datei_infos_pre = current($liste_dateien);
$datei_infos = explode("|",$datei_infos_pre);
$datei_infos_name = $datei_infos[1];

if ($x == 0 || $x == 5 || $x == 10 || $x == 15){echo "<tr>";}
?>
<td>
<?
echo "<img src="$verzeichnisanfang".key($liste_dateien)."" width=100 alt="".gmdate("d.m.Y (H:i:s)", $datei_infos[0])."">";
next($liste_dateien);
?>
</td>
<?
if ($x == 4 || $x == 9 || $x == 14 || $x == 19){echo "</tr>";}

}
?>
</table>

eine Tabelle erzeugen. Wo also die Spaltenanzahl 5 betragen soll.
Habe das aber nur manuell hingekriegt. Für sowas muss es doch einen Trick geben, ich kann doch nicht zig mal if ($x == 0 || $x == 5 ||  ... schreiben, oder??

Wär schön, wenn mir jemand helfen kann.

Gruß, TMS

  1. Hallo,

    if ($x == 0 || $x == 5 || $x == 10 || $x == 15){echo "<tr>";}

    % (modulo) ist Dein Freund, das liefert den Rest einer Division durch eine Zahl zurück, Deine Zeile lautet dann:
    if ($x % 5 == 0)
    {
       echo "<tr>";
    }

    Viele Grüße
    Stephan

    1. Hallo,

      verstehe nicht so ganz das Prinzip!!
      Kannst Du mir auch sagen was dann aus

      if ($x == 4 || $x == 9 || $x == 14 || $x == 19){echo "</tr>";}

      wird???

      Gruss TMS

      1. Hallo,

        Kannst Du mir auch sagen was dann aus

        if ($x == 4 || $x == 9 || $x == 14 || $x == 19){echo "</tr>";}

        if($x % 5 == 4)
        {
          echo "</tr>";
        }

        Ist es jetzt klar? Alle Zahlen in der Reihe haben gemeinsam, daß 4 übrigbleibt, wenn man das größtmögliche vielfache von 5 abzieht (0, 5,10,15,usw.)

        Viele Grüße
        Stephan