» Startseite
» Newsübersicht
» Kontakt
» Impressum

» Forum
» Gästebuch

» Einführung PHP
   » Anfang
   » Erste Schritte
   » Variablen
   » if-Anweisung
   » Log. Operatoren
   » Übung
   » Dateien
   » Schleifen
   » Array
   » Dateien Teil 2
   » Datum & Zeit
   » Mail Funktion
   » Sessions

» Einführung MySQL

PHP-Einfach.de

Counterdienst:
Digicount.de
Unser werbefreier Counter- und Statistikdienst

While-Schleife

In manchen Fällen ist es notwendig, eine Anweisung so lange auszuführen, bis ein bestimmtes Ergebnis eintritt.
Dies benutzt man z.B. auch um den Inhalt von Datenbanken (z.B. MySQL) oder einfach den Inhalt von Dateien auszugeben.

Hierfür können wir entweder while- oder auch for-Schleifen benutzen.
Bei einer while-Schleifen kann man eine komplexere Bedingung angeben, darum wird diese häufiger benutzt.
For-Schleifen benutzt man meistens nur zum Hoch- bzw. Runterzählen von Werten.

Für unser Beispiel lassen wir unseren PHP Script solange zählen, bis eine bestimmte Zahl erreicht ist.

Dafür brauchen wir als erstes ein Formular, indem wir die Zahl eingeben.

<form action="seite2.php" method="post">
Eine Zahl zwischen 1 und 25:<br>
<input type="Text" name="zahl">
<input type="Submit" value="Absenden">
</form>
Der nächste Schritt ist die while-Schleife.

Zuerst fragen wird selbstverständlich unseren Zahlenwert ab.

Bei while-Schleifen arbeitet man meistens mit einem "internen Counter", der zunächst initialisiert wird - in diesem Fall mit dem Wert 0.

<?php
$zahl = $_POST['zahl'];

$a = 0;
?>
Diese Zahl speichern wir in der Variable $a.
Wir könnten natürlich auch jede andere Variable benutzen.

Der Wert entscheidet darüber, ab wann PHP anfangen soll zu zählen, wir könnten auch von -10 zählen lassen.

Dann brauchen wir unsere while-Schleife.
<?php
while($a < $zahl)
   {
   $a++;
   echo $a.", ";
   }
?>
Direkt nach dem einleitenden while wird innerhalb der runden Klammer die Bedingung gestellt. Solange diese Bedingung zutrifft, wird jetzt die Anweisung, der Code innerhalb der geschwungenen Klammern, ausgeführt.

Zum Anfang erhöhen wir den Wert von $a um eins, denn wir wollen dort als erste Zahl eine 1 stehen haben.
Wir können natürlich auch am Schluss $a++ schreiben, dann wäre aber die erste Ausgabe eine Null.


Das erhöhen der Variable $a ist ganz wichtig, sonst würde sich PHP dumm und dämlich zählen, denn die Bedingung wäre dann immer wahr.

Zwischen den geschwungenen Klammern geben wir die Zahl und ein Komma aus, damit es besser aussieht.

Der ganze Script sieht dann so aus:
<?php
$zahl = $_POST["zahl"];

//Eine kleine Überprüfung,
//damit keine zu großen Zahlen eingegeben werden
if($zahl > 25)
   {
   $zahl = 25;
   }

$a = 0;
while($a < $zahl)
   {
   $a++;
   echo $a.", ";
   }
?>

for-Schleife

Neben der while-Schleife gibt es auch noch die for-Schleife. Diese ist etwas komplizierter und mit ihr lässt man nur Werte Hoch- bzw. Runterzählen.

Wir benutzen wieder das Beispiel mit dem Zählen.

Der erste Teil bleibt gleich:
<?php
$zahl = $_POST["zahl"];

if($zahl > 25)
   {
   $zahl = 25;
   }
?>
Doch jetzt brauchen wir die for-Schleife.

<?php
for($a = 0; $a < $zahl; $a++)
   {
   echo $a;
   echo ", ";
   }
?>
Bei der for-Schleife geben wir die Variable $a innerhalb der runden Klammern an.
Dort geben wir nach dem erstem Semikolon (;) die Bedingung an. Zum Schluss (auch durch ein Semikolon ; getrennt) erhöhen wir den Wert von $a um 1.

Wir benutzen als Startwert 0, und die Schleife läuft insgesamt $zahl (max. 25) mal durch. Die erste Ausgabe wird eine 0 sein.

Schleifen braucht man sehr oft, wenn man mit Datenbanken oder Dateien arbeitet.

Als nächstes schauen wir uns die Array Funktion an.

Autor Andavos

News

Forum

Newsletter


© PHP-Einfach.de 2003 - 2007