Mailinglisten-Archive |
"Rene Paschold (Connect GmbH)" wrote: > > ich habe mal eine kleine Frage: Was ist der Unterschied > zwischen den beiden Schleifen For und While? > Wann setzt man welche Schleife ein? While und For sind zwei komplette unterschiedliche Sprachkonstrukte. +++ for +++ for (expr1; expr2; expr3) statement, http://www.php.net/manual/html/control-structures.for.html Betrache die Examples. expr1..3 kann beliebigen PHP-Code aufnehmen. expr1 wird einmalig bei Eintritt in die Schleife ausgewertet, expr2 ist die Abbruchbedingung und expr3 beschreibt, was bei jedem Duchlauf passieren soll. Alle drei Expressions dürfen leer sein. For wird typischerweise verwendet, wenn die Abbruchbedingung: - wenn alle drei expressions mit einem sinnvollen Wert belegt werden kännen (- die Abbruchbedingung konstant bleibt) Klassisch ist: for ($i=0; $i<10; $i++) { echo "$i<br>\n"; } oder: for ($i=0; $i<count($daten); $i++) { echo $daten[$i], "<br>\n"; } +++ while +++ while (expr) statement, http://www.php.net/manual/html/control-structures.while.html Im Unterschied zu for sieht man eine expression, die ähnlich wie expr2 bei for als Abbruchbedingung dient. Bei einfachen Anwendungen ist es Jacke wie Hose ob man for oder while verwendet. $i=0; while ($i<10) { $i++; echo "$i<br>\n"; } While wird typischerweise verwendet, wenn: - keine oder viele initiale Expressions notwendig werden (unübersichtlich in for) (- die Abbruchbedingung variabel ist) +++ do ... while +++ Identisch zu while, mit dem feinen Unterchied, daß mindestens ein Durchlauf erfolgt, weil die Abbruchbedingung man Ende liegt. +++ while to for +++ Jeder mag selbst entscheiden, was wann beser lesbar ist. Z.B. hier: for (;; echo "Endlos") <=> while (1) echo "Endlos" Ulf -- Ulf Wendel NetUSE Kommunikationstechnologie GmbH Siemenswall, D-24107 Kiel, Germany Fon: +49 431 386435 00 -- Fax: +49 431 386435 99
php::bar PHP Wiki - Listenarchive