Inhaltsverzeichnis

Schleifen

Einfache Schleifen

1 bis 100

<?php
    for ($f=1; $f<=100; $f++){
        echo ($f." ");
    }   
?>

Erläuterung: Mit dem Befehl for wird eine Schleife eingeleitet. Das bedeutet, dass der Code, der in den anschließenden geschweiften Klammer steht, mehrmals ausgeführt werden soll. Wie oft das geschieht, legen die Ausdrücke in den runden Klammer fest. Die Bedeutung der 3 Elemente in der runden Klammmer:

Der echo Befehl gibt den Ausdruck schließlich aus. D.h., das, was der echo-Befehl ausgibt, landet in der HTML-Datei, die der Browser erhält.

Lottoschein-Aufgaben

Lottoschein mit nur einer for-Schleife

Möchte man einen Lottoschein drucken (also die Zahlen, die beim Lotto angekreuzt werden können ausgeben), gibt es mindestens die folgenden Möglichkeiten.

Verwendet man nur eine einzige Schleife, so werden die Zahlen entweder alle untereinander oder alle nebeneinander ausgegeben. Sollen jedoch immer 7 Zahlen in eine Zeile, so muss ein Zeilenumbruch an der passenden Stelle ausgegeben werden. Bei den Zahlen von 1 bis 49 ergibt sich die Position für ein <br/> durch einen Rest von 0 bei der Division durch 7. Die Zeile mit dem if gibt also immer genau dann einen Zeilenumbruch aus, wenn bei der Division der Schleifenvariablen durch 7 der Rest gleich Null ist. Der Sourcecode:

for ($i=1; $i<=49; $i++) {
	echo "  $i";
	if ($i % 7 == 0) {
		echo "<br>";
	}
}

Das Resultat:

1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 32 33 34 35
36 37 38 39 40 41 42
43 44 45 46 47 48 49

Lottoschein mit verschachtelten Schleifen

Die vielleicht etwas elegantere Methode besteht in der Verwendung zweier Schleifen, die ineinander verschachtelt sind. Die äußere Schleife hat die Aufgabe, die einzelnen Zeilen der Reihe nach durchzuzählen, während die andere für jede einzelne Zeile die Spalten der Reihe nach durchgeht.

Der Sourcecode:

for ($Zeile=0; $Zeile<=6; $Zeile++) {
	for ($Spalte=1; $Spalte<=7; $Spalte++) {
		$Zahl = 7 * $Zeile + $Spalte;
		echo (" $Zahl ");
	}
	echo "<br>";
}

Das Resultat:

1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 32 33 34 35
36 37 38 39 40 41 42
43 44 45 46 47 48 49

Lottoschein in einer HTML-Tabelle

Um die Ausgabe zu verschönern, können die Zahlen in eine Tabelle geschrieben werden. Der Sourcecode:

echo ("<table>\n".'<tbody align="right">');
for ($Zeile=0; $Zeile<=6; $Zeile++) {
	echo ("<tr>");
	for ($Spalte=1; $Spalte<=7; $Spalte++) {
		$Zahl = 7 * $Zeile + $Spalte;
		echo ("<td>$Zahl</td> ");
	}
	echo ("</tr>\n");
}
echo ("</tbody>\n</table>");

Und das Resultat:

1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 32 33 34 35
36 37 38 39 40 41 42
43 44 45 46 47 48 49