tbee's page
   home  work  myself  mixed  guestbook  
   
      INHALT Webapplication Seminar Web.Development Seminar / weitere Kontrollstrukturen (z.B. Schleifen)

Wer mir was gutes tun will kauft über diesen Link bei Amazon ein !

Web.Development Seminar / weitere Kontrollstrukturen (z.B. Schleifen)

Einige passende Übungsaufgaben & Beispiele Nr. 7.

while Schleifen

Die einfachste Schleifenform in PHP ist die While Schleife. while (Bediengung)
Diese Schleife wird so lange ausgeführt bis die Bediengung nicht mehr erfüllt [false] ist. Ist die Bedignung beim Programmstart nicht erfühlt wird die Schleife ü+berhaupt nicht durchlaufen, ansonsten so lange bis die Bediengung nicht mehr erfüllt ist.

  • Hint: Sollte der Browser 'merkwürdig' lange laden beim ausführen eines PHP Skriptes ist dies oft ein Zeichen auf eine Endlosschleife! Bei der die Bediengung niemals false wird.

Ein einfaches Beispiel:

    <?   # while Schleife
    
$zahl 20;                 // Startwert Schleife 20
    
while ($zahl >= 10)         // Führe die Schleife so lange aus bis Zahl >=10
    
{
          
$zahl $zahl -2;     // Ziehe von Zahl 2 ab...
          
print "Zahlenwert ".$zahl;
    }
    print 
"Schleifenende";
   
?>

do/while Schleifen

Im Gegensatz zur while Schleife führt eine do/while Schleife den Schleifenblock mindestens einmal aus.
Bei dieser Form wird die Bedengung erst am Ende geprüft. D.h. nach dem ersten Durchlaufen wird die Bedingung geprüft und dann entschieden ob die Schleife erneut durchlaufen soll.
Ein einfaches Beispiel:

     <?   # do/while Schleife
    
$zahl 0;                  // Startwert Schleife 0
    
do
    {
          
$zahl $zahl -2;     // Ziehe von Zahl 2 ab...
          
print "Zahlenwert ".$zahl;
    }
    while (
$zahl >= 10);         // Führe die Schleife so lange aus bis Zahl >=10
                                // Schleife läuft nur einmal durch!
    
print "Schleifenende";
   
?>

  • Hint: Sollte der Browser 'merkwürdig' lange laden beim ausführen eines PHP Skriptes ist dies oft ein Zeichen auf eine Endlosschleife! Bei der die Bediengung niemals false wird.

for Schleifen

For Schleifen sind etwas komplexer als while Schleifen.
Eine for Schleife hat 3 Ausdrücke for (Ausdruck1; Ausdruck2;Ausdruck3)
  • Der ertste Ausdruck wird beim Schleifenbegin ausgeführt (ungeprüft!)
  • Der zweite Ausdruck wird zu Beginn des Schleifendurchgangs geprüft und muss zum Durchlaufen der Schleife erfüllt sein [TRUE]
  • Der dritte Ausdruck wird am Ende des Schleifendurchlaufs ungeprüft ausgeführt

     <?   # for Schleife
    
for ($start 0$start <= 4$start++) // Schleifenstartwert auf 0 setzen ;
    
{                                       // größer 4 prüfen ;
                                            // nach dem ersten Durchlauf um 1 itterieren
        
print "Startwert: ".$start;
    }

    for (
$start 10$start 4$start=$start-3// Schleife läuft 6 mal durch
    
{
        
$start=$start+2;                           // beachten!
        
print "Startwert: ".$start;
    }

   
?>

  • Hint: Es müssen nicht alle Ausdrücke bei einer for Schleife angegeben werden. Im Extremfall ist syntaktisch auch for (;;) korrekt [Endlosschleife]. Der Schleifenablauf kann auch anders gesteuert werden. [s.u.]

Schleifen Sterungselemente break/continue

Um Schleifen abzubrechen bzw. erneut zu starten gibt es:
  • break - Die Ausführung der aktuellen while, do..while, for, foreach, switch Schleife/Kontrollstruktur wird sofort abgebrochen.
  • continue - Ein Abruch der Schleife wird durchgeführt und diese dann erneut durchlaufen.

einfache Beispiele:
     <?   # Schleifesteuerung
      # break
      
for (;;)
      {
          print 
"Schleife";
          break;        
// Schleifendurchlauf anhalten
      
}
      
      
# continue
      
for ($start=0;;$start++)
      {
          print 
"Schleifenzahl ".$start;
          if (
$start 8)
          {
              continue; 
// Schleifendurchlauf erneut starten
          
}
          break;        
// Schleifendurchlauf anhalten
      
}

   
?>

Eine passende Übungsaufgabe & Beispiele Nr. 7 .

  • Hint: Über eine numerische angehängtes Argument bei einer break Anweisung können mehrere, geschachtelte Befehlssequenzen abgebrochen werden (z.B. Schleife / switch mit ... break 2;)!

Code auslagern und einbinden (include/require)

Dazu eine passende Übungsaufgabe & Beispiele Nr. 7

include / require

Mittels Include oder Require kann extern in Dateien vorliegender PHP Code eingebunden und ausgeführt werden.
Beide sind nahezu identisch und unterscheiden sich nur im Fhelerhandling.
Require beendet mit einem Fatal Error die Scriptasführung wenn die eingebundene Datei nicht vorhanden ist, include erzeugt statt dessen eine Warning.
D.h. soll ein Skript nur ausgeführt werden wenn eine Datei vorhanden ist und eingebunden werden kann dann muss require verwendet werden!.
  • Hint: Die includierten Dateien müssen PHP Code mit Php Tacks umschliessen!

einfache Beispiele:

     <?   # include / require
    
    
globals.inc  // fremde Datei
    
<?

    
$start 4;
    
$end 42;

    
?>
    
    <?
    
# eigentliches Script

    
require("globals.inc");
    include(
"header.inc");
    
    print 
"Start: ".$start."End: ".$end;

   
?>

include_once / require_once

Im Unterschied zu include / require bindet include_once / require_once den externen Code nur einmal ein.
Damit lassen sich doppelte Funktions/Parameter o. Klasseneinbindungen vermeiden.

  • Hint: Innerhalb von includierten Files ist es per return() die Ausführung der Datei abzubrechen und zum ausführenden Skript zurückzuspringen

Dazu eine passende Übungsaufgabe & Beispiele Nr. 7

<<-- zurück   -- Startseite Seminar --   

Druckerversion     [valid html 4.01]      [english]
style: blauer Stylegelber Styleroter Stylegruener StyleStandard Style
© 2001 by  tbee / Impressum last update at: 23.05. 2003 21:05:32
url: www.tbee.de/seminar/t4.php