Teil von  SELFPHP
  +++ SELFPHP CronJob-Service :: Jetzt auch als Professional-Version verfügbar! +++

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: SELFPHP Forum ::

Fragen rund um die Themen PHP? In über 120.000 Beiträgen finden Sie sicher die passende Antwort!  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

:: Qozido ::

Die Bilderverwaltung mit Logbuch für Taucher und Schnorchler.   

 
 
Expression Web 2 und PHP


SELFPHP Produktempfehlung
Microsoft Windows Server 2008
Seite Windows Server 2008
Seite

Microsoft SQL Server 2008
Seite SQL Server 2008
Seite

Microsoft Expression Web 3
Seite Microsoft Expression
Seite


Listing 13.6 Zwei verschachtelte Schleifen

for ($ZaehlerAussen = 1; $ZaehlerAussen <= 4; $ZaehlerAussen++) {
for ($ZaehlerInnen = 11; $ZaehlerInnen <= 13; $ZaehlerInnen++) {
$ergebnis = $ZaehlerAussen * $ZaehlerInnen;
echo "$ergebnis\n";
}
}

Dieses Programm verwendet für die Multiplikation der Zahlen zwei Schleifen. Demgemäß werden zwei Zählervariablen deklariert, die mit $ZaehlerAussen und $ZaehlerInnen bezeichnet sind. Die erste Schleife zählt von 1 bis 4, die zweite von 11 bis 13.

Während der Programmausführung liest der Interpreter die erste for-Anweisung und sieht daraufhin hinter der geöffneten Klammer nach, mit welchen Zahlen der Zählvorgang beginnen soll:

for ($ZaehlerAussen = 1;

Nachdem der Interpreter weiß, dass er ab dem Wert 1 zählen muss, trifft er auf die zweite for-Anweisung:

for ($ZaehlerInnen = 11;

Er weiß nun, dass ein zweiter Zählvorgang ausgeführt werden soll und merkt sich dessen Startwert (11). In $ZaehlerAussen befindet sich jetzt somit der Wert 1, während in $ZaehlerInnen der Wert 11 gespeichert ist.

Die folgenden beiden Anweisungen multiplizieren den Inhalt der Variablen $ZaehlerAussen mit dem Inhalt der Variablen $ZaehlerInnen und geben das Ergebnis auf dem Bildschirm aus. Im Anschluss daran liest der PHP-Interpreter die erste geschlossene geschweifte Klammer:

Er erhöht deshalb den Wert von $ZaehlerInnen und prüft, ob die Bedingung $ZaehlerInnen <= 13 bereits erfüllt ist. Da sich in der Variablen gegenwärtig der Wert 12 befindet, ist das Zählen noch nicht beendet. Der PHP-Interpreter springt somit im Programmcode zurück, um die Anweisungen auszuführen, die der Zeile

for ($ZaehlerInnen = 11 ;

folgen. Dies wiederholt sich, bis $ZaehlerInnen gleich 14 ist. Der Zählvorgang für die zweite Schleife ist somit beendet. Dann liest der Interpreter die zweite geschweifte geschlossene Klammer, der ersten Schleife.

Der Wert von $ZaehlerAussen wird daraufhin um 1 erhöht. Der Interpreter prüft anschließend, ob $ZaehlerAussen kleiner oder gleich 4 ist. Sie erinnern sich? Die erste Schleife zählt bis 4.

$ZaehlerAussen ist natürlich noch nicht 4. In der Variablen ist jetzt der Wert 2 gespeichert. Der Interpreter springt deshalb im Programmcode zurück in die Zeile, die der Anweisung

for ($ZaehlerAussen = 1;

folgt. Wenn Sie jetzt im Programm nachsehen, werden Sie feststellen, dass dies die Zeile

for ($ZaehlerInnen = 11;

ist. Die zweite Schleife wird also noch einmal ausgeführt. Diesmal ist in $ZaehlerAussen jedoch nicht der Wert 1, sondern der Wert 2 gespeichert. Die Zahlen von 11 bis 13 werden somit diesmal mit dem Wert 2 multipliziert. Das alles wiederholt sich, bis $ZaehlerAussen gleich 4 ist.

Die erste Schleife wird übrigens als äußere Schleife bezeichnet. Die zweite Schleife ist die innere Schleife, da sie sich innerhalb der äußeren Schleife befindet. Die innere Schleife wird wiederholt mit jedem Schleifendurchlauf der äußeren Schleife ausgeführt. Die äußere Schleife unseres Beispiels führt vier Durchläufe aus. Die innere Schleife wird somit viermal ausgeführt.

Die innere Schleife wiederum führt jedes Mal dann, wenn sie aufgerufen wird, drei Schleifendurchläufe aus. Da sie viermal aufgerufen wird, werden insgesamt zwölf Schleifendurchläufe ausgeführt. Schleifenkonstruktionen, wie die, die unser Skript verwendet, werden als verschachtelte Schleifen bezeichnet.

foreach-Schleifen

Eine weitere Schleifenart ist die foreach-Schleife, die benutzt wird, um alle in einem Objekt gespeicherten Elemente nacheinander zu bearbeiten. Ein solches Objekt kann beispielsweise ein Array sein. Die Syntax lautet wie folgt:

foreach (<$ArrayBezeichnung> as <$ArrayWert>)

Die Variable $ArrayWert nimmt den aktuellen Wert aus dem Array ($ArrayBezeichnung) auf. Wenn die Schleife beispielsweise zum dritten Mal durchlaufen wird, wird in $ArrayWert der Wert gespeichert, der in dem Array $ArrayBezeichnung die Ordnungszahl 2 (nicht 3, weil die Zählung mit 0 beginnt) besitzt. Dazu ein Beispiel:

$Namen = array("Peter", "Hans", "Manuela");
foreach($Namen as $AktuellerName)
{
echo "$AktuellerName, ";
}

Wenn der Interpreter die Anweisung

foreach ($Namen as $AktuellerName)

liest, ermittelt er zunächst die Anzahl der in dem Array $Namen gespeicherten Werte. In unserem Fall befinden sich drei Namen in dem Array. Der Interpreter weiß somit, dass die Schleife drei Mal durchlaufen werden muss.

Vor dem ersten Schleifendurchlauf liest der Interpreter den ersten Wert aus dem Array aus und weist diesen der Variablen $AktuellerName zu. Die Anweisung innerhalb der Schleife gibt den Inhalt dieser Variablen, also den ersten Namen auf dem Bildschirm aus. Vor dem zweiten Schleifendurchlauf liest der Interpreter den zweiten Wert, also den zweiten Namen aus dem Array aus, und weist diesen der Variablen $AktuellerName zu. Dies wiederholt sich, bis alle Schleifendurchläufe beendet sind.



Seite 10 von 22 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22



Copyright © 2010
Microsoft Deutschland GmbH
Alle Rechte vorbehalten.

 Microsoft Deutschland GmbH
 




:: Premium-Partner ::

Webhosting/Serverlösungen


Premium-Partner MECO Systemhaus GmbH & Co. KG
Premium-Partner PSW GROUP GmbH & Co. KG
Premium-Partner BPI-Systeme
Premium-Partner Pixel X
Premium-Partner
 

:: SELFPHP Sponsoren ::


DM Solutions
Microsoft Deutschland GmbH
twosteps.net - ...Premium-Webhosting
Sedo - Bei uns wird PHP großgeschrieben
hostfactory.ch - OptimaNet Schweiz AG
ZEND - The PHP Company
Kaspersky Labs
HighText iBusiness
SELFPHP Sponsoren
 

Qozido


© 2001-2013 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt