PHP i MySQL dla każdego
Sama pętla działa natomiast w taki sposób, że w każdym przebiegu jest wykonywana instrukcja warunkowa if sprawdzająca, czy zmienna i osiągnęła wartość 9, czyli badająca warunek i == 9. Jeśli warunek ten będzie prawdziwy, będzie to oznaczało, że na ekranie zostało wyświetlonych dziesięć napisów. Zostanie więc wykonana instrukcja break, która przerwie działanie pętli. W przeciwnym wypadku wykonana zostanie kolejna iteracja.
Możemy już zatem, zgodnie z zapowiedzią, pokazać, jak pozbyć się wszystkich wyrażeń z nawiasów okrągłych pętli! Wyrażenie początkowe przeniesiemy przed pętlę, a wyrażenia modyfikujące i warunkowe do wnętrza pętli. Tego rodzaju konstrukcja została przedstawiona na listingu 3.19.
Listing 3.19. Nietypowa konstrukcja pętli
<?php ti - 0: fort: ;){
echot"Pętla typu for. i = Si <br>"): if(Si++ >- 9){ break:
Należy pamiętać, że instrukcja break przerywa jedynie działanie pętli, w której się znajduje. Jeśli zatem mamy zagnieżdżone pętle for, a instrukcja break występuje w pętli wewnętrznej, zostanie przerwana jedynie pętla wewnętrzna. Pętla zewnętrzna w takiej sytuacji nadal będzie działać. Spójrzmy na kod znajdujący się na listingu 3.20. To właśnie dwie zagnieżdżone pętle for.
Listing 3.20. Zagnieżdżone pętle typu for
<html>
<head>
<ti 11 e>Przyk1adowa strona</t i tle> </head>
<body>
<?php
for($i = 0: Si < 3: Si++){ fortSj - 0: Sj < 3: $j++>{ echot"Si Sj "): echot"Snbsp: : ");
echot"<br>");
</body>
</html>
Wynikiem działania takiego programu będzie ciąg liczb widoczny na rysunku 3.8. Pierwsza cyfra w każdej parze określa stan zmiennej i, natomiast druga — stan zmiennej j. Ta konstrukcja działa w taki sposób, że w każdym przebiegu pętli zewnętrznej są wykonywane trzy przebiegi pętli wewnętrznej. Stąd też pary liczb, które pojawiają się na ekranie.