{Perl_CGI_Einführung}

MuWeb CGI Einführung Privat
 
00 Index
01 Vorwort
02 Kickstart
03 Hello World
04 Variablen
05 Arrays
06 Queries
07 Vergleiche
08 Schleifen
09 Dateien
10 Reg_Exp
11 Strings
12 Subs
13 Links

CGI 8 - Schleifen

Sie möchten Code so oft ausführen lassen bis eine Bedingung erfüllt ist? Dann nutzen Sie die while Schleife.


Unterkapitelindex

8.1 Was sind Schleifen?
8.2 Allgemeines zu Schleifen
8.3 Until Anweisung
8.4 Beispiel




8.1 Was sind Schleifen?
Eine Schleife besteht aus 2 Teilen:
1) Bedingung
2) Code

Solange die Bedingung wahr ist, wird der Code ausgeführt. Wird die Bedingung unwahr, so arbeitet der Interpreter das restliche Skript ab.




8.2 Allgemeines zu Schleifen
Eine einfache Schleife:

01
02
03
04
05
06
07

my $a = 0;
my $b = 10;

while ($a <= $b){
   $a = $a + 1;
   print "$a. Durchgang";
}

Die Ausgabe dieser Schleife ist foglende:

01
02
03
04
05
06

07
08
09
10

1. Durchgang
2. Durchgang
3. Durchgang
4. Durchgang
5. Durchgang
6. Durchgang
7. Durchgang
8. Durchgang
9. Durchgang
10. Durchgang


Der Code in den geschweiften Klammern wird also so lange ausgeführt bis die Bedingung in den Klammern erfüllt ist (im Beispiel 10 Mal). Die Operatoren können genau wie bei den IF Bedingungen (s. Kapitel 7) genutzt werden:

Zum Vergleichen von Zahlen gibt es folgende Operatoren:

==
!=
<
>
<=
>=

Beide Zahlen müssen gleich sein
Beide Zahlen müssen ungleich sein
Zahl 1 muss kleiner Zahl 2 sein
Zahl 1 muss größer Zahl 2 sein
Zahl 1 muss kleiner oder gleich Zahl 2 sein
Zahl 1 muss größer oder gleich Zahl 2 sein

Zum Vergleichen von Strings gibt es folgende Operatoren:

eq
ne

Text 1 muss gleich Text 2 sein
Text 1 muss ungleich Text 2 sein



8.3 Until Anweisung
Die Unless Anweisung ist eine Negative While Anweisung - Der Code in den geschweiften Klammern wird also so lange ausgeführt wie die Bedingung in den runden Klammern nicht erfüllt ist. Also kann

01
02
03
04

while ($a != $b){
   $a = $a + 1;
   print "$a. Durchgang";
}



als

01
02
03
04

until ($a == $b){
   $a = $a + 1;
   print "$a. Durchgang";
}

geschrieben werden.




8.4 Beispiel
Ein einfaches Beispiel für eine While Anweisung finden Sie in 8.1.